1. 确认安装redis
在启动redis之前,我们需要先确认redis是否已经安装在本地机器上。我们可以通过命令行输入redis-cli等确认命令查看是否有redis相关的命令。
redis-cli
如果出现以下内容,则说明redis已经安装完毕:
127.0.0.1:6379>
2. 启动redis-server服务
启动redis需要运行redis-server命令,该命令需要指定redis的配置文件。在默认情况下,redis的配置文件是redis.conf,可以通过以下命令启动redis-server:
redis-server /etc/redis/redis.conf
在指定配置文件路径的前提下,redis-server会去读取该文件,并启动一个redis-server服务。我们可以通过其他命令来检查redis是否已经启动。例如,可以通过以下命令查看redis服务是否在运行:
ps aux | grep redis-server
如果输出结果中有一个redis-server进程,则表示redis已经通过成功启动。
3. 关于redis.conf配置文件
3.1 配置数据持久化
在redis.conf文件中,有如下配置:
save 900 1
save 300 10
save 60 10000
这表示redis会每隔900秒(15分钟)检查一次键的变化情况,如果有变化,则进行持久化。同样的,redis还会每隔300秒(5分钟)和60秒(1分钟)检查一次并进行持久化。
如果希望关闭持久化功能,则需要注释掉其中的save配置,并添加如下配置:
save ""
3.2 开启AOF模式
AOF是redis的一种持久化方式,可以保证redis的数据不容易丢失。我们可以通过在redis.conf文件中修改appendonly配置来开启AOF模式。
将appendonly配置项的值设置为yes即可:
appendonly yes
开启AOF模式需要注意的是,AOF日志文件会随着时间的推移变得越来越大,这可能会导致硬盘空间的不足。因此,我们需要设置redis-logrotate脚本,自动地对AOF日志文件进行周期性地裁剪。在redis.conf配置文件中,有如下配置可供参考:
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
这表示redis会在AOF日志文件大小达到64MB或自上次重写以来修改的数据量达到100%时,进行一次AOF重写。
4. 使用systemctl管理redis服务
4.1 创建redis.service文件
systemctl是Linux下的服务管理工具,可以用来启动、停止、重启、查看服务状态等操作。为了方便管理redis服务,我们可以将redis的启动、停止命令封装到一个service文件中,从而将redis服务加入到systemd服务的管理中。
在/etc/systemd/system/目录下创建redis.service文件,并将以下内容复制到该文件中:
[Unit]
Description=Redis
After=network.target
[Service]
Type=forking
PIDFile=/var/run/redis.pid
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
User=root
[Install]
WantedBy=multi-user.target
4.2 启动redis服务
创建完redis.service文件之后,就可以通过systemctl启动redis服务了:
systemctl start redis
这样,systemd就会自动执行redis.service文件中定义的启动命令,启动redis服务。
4.3 停止redis服务
停止redis服务同样可以通过systemctl实现:
systemctl stop redis
这样,systemd就会自动执行redis.service文件中定义的停止命令,停止redis服务。
4.4 查看redis服务状态
我们可以通过以下命令查看redis服务是否正在运行:
systemctl status redis
输出结果中如果带有active (running)字样,则表示redis服务正在运行。
5. 总结
以上是在Linux系统下启动redis的方法。通过redis-server命令可以直接启动redis,而通过systemctl则可以将redis服务加入到系统服务的管理中,方便对redis进行更加细致的控制。在配置redis时,我们需要特别注意数据持久化和AOF模式的设置,以保持redis数据的安全性和稳定性。