一、研究Redis的安装路径
Redis是一款基于内存的缓存数据库,安装路径可以根据具体的环境有所不同。以Ubuntu系统为例,可以用以下命令查询:
which redis-server
该命令会输出Redis的安装路径,例如:
/usr/local/bin/redis-server
在实际设置开机启动时,需要用到该路径。
二、编写启动脚本
为了实现Redis开机启动,我们需要编写一个脚本,该脚本会在启动时自动运行并启动Redis服务。
对于Ubuntu系统,可以在/etc/init.d/
目录下创建一个redis
文件,然后将以下代码复制进去:
#!/bin/sh # # Simple Redis init.d script conceived to work on Linux systems # as it does use of the /proc filesystem. REDISPORT=6379 EXEC=/usr/local/bin/redis-server CLIEXEC=/usr/local/bin/redis-cli PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/etc/redis/${REDISPORT}.conf" case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis server..." $EXEC $CONF fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping ..." $CLIEXEC -p $REDISPORT shutdown while [ -x /proc/${PID} ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "Redis stopped" fi ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0
该脚本可以启动、停止以及重启Redis服务,以及对应的进程文件会存储在/var/run/redis_[port].pid
中。
三、添加脚本到开机启动项
为了使Redis服务在开机时启动,需要将上一步中编写的启动脚本添加到开机启动项中。
以Ubuntu系统为例,可以使用以下命令添加:
sudo update-rc.d redis defaults
该命令会将/etc/init.d/redis
文件添加到开机默认的启动项中,从而实现开机自动启动Redis服务。
四、检查Redis服务状态
在上述操作完成后,可以使用以下命令检查Redis服务是否正常运行:
sudo service redis status
该命令会输出Redis服务的状态信息,例如:
● redis.service - Redis In-Memory Data Store Loaded: loaded (/lib/systemd/system/redis.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-06-10 16:57:31 CST; 5s ago Docs: http://redis.io/documentation, man:redis-server(1) Process: 11472 ExecStop=/usr/bin/redis-cli shutdown (code=exited, status=0/SUCCESS) Main PID: 11481 (redis-server) Tasks: 4 Memory: 462.0K CPU: 31ms CGroup: /system.slice/redis.service └─11481 /usr/local/bin/redis-server 127.0.0.1:6379
如果输出的状态是active (running)
,则说明Redis服务正常运行。