技术文摘
Linux 如何设置 redis 自启动
2025-01-14 23:01:02 小编
Linux 如何设置 redis 自启动
在 Linux 环境中,让 redis 自启动可以确保在服务器重启后,redis 服务能够自动运行,避免手动启动的麻烦。以下将详细介绍几种在 Linux 系统中设置 redis 自启动的方法。
使用 systemd 服务管理工具(适用于大多数现代 Linux 发行版,如 CentOS 7、Ubuntu 18.04 及以上)
- 创建 redis 服务单元文件:打开终端,使用 root 权限创建一个新的服务单元文件,命令如下:
sudo nano /etc/systemd/system/redis.service。在打开的文件中,输入以下内容:
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
User=redis
[Install]
WantedBy=multi-user.target
这里需要注意,ExecStart 中的路径要根据你实际安装的 redis 路径进行调整。
2. 保存并退出:按 Ctrl + X,然后按 Y,再按 Enter 保存并退出文件。
3. 重载 systemd 守护进程:让 systemd 重新加载服务配置,执行命令:sudo systemctl daemon-reload。
4. 设置开机自启并启动 redis 服务:分别执行 sudo systemctl enable redis 和 sudo systemctl start redis 命令。你可以通过 sudo systemctl status redis 查看服务状态。
使用 chkconfig 命令(适用于较旧的 Linux 发行版,如 CentOS 6)
- 确保 redis 安装目录在系统路径中:如果没有在路径中,需要将 redis 安装目录添加到
PATH环境变量中。 - 创建启动脚本:创建一个名为
redis的启动脚本,路径为/etc/init.d/redis,内容如下:
#!/bin/bash
# chkconfig: 2345 80 90
# description: Redis startup script
REDISPORT=6379
REDISCONFIG="/etc/redis/redis.conf"
REDISEXEC="/usr/local/bin/redis-server"
REDISCLIEXEC="/usr/local/bin/redis-cli"
case "$1" in
start)
if [ -f /var/run/redis_${REDISPORT}.pid ]; then
echo "Redis is already running"
else
echo "Starting Redis server..."
$REDISEXEC $REDISCONFIG
fi
;;
stop)
if [ -f /var/run/redis_${REDISPORT}.pid ]; then
PID=$(cat /var/run/redis_${REDISPORT}.pid)
echo "Stopping Redis server..."
$REDISCLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]; do
sleep 1
done
else
echo "Redis is not running"
fi
;;
*)
echo "Usage: /etc/init.d/redis {start|stop}"
exit 1
;;
esac
exit 0
- 设置脚本权限:执行
chmod +x /etc/init.d/redis使其可执行。 - 添加到开机自启:执行
chkconfig --add redis和chkconfig redis on命令。
通过以上方法,你就可以在不同的 Linux 系统中轻松设置 redis 自启动,保障 redis 服务的稳定运行。
- CSS :hover不能正确高亮表格外边框
- CSS 实现动画突变移动效果的方法
- jQuery 如何选择下拉框选项并获取其值
- 移动端H5网页视频播放控制不见的解决方法
- JavaScript 如何从外部 URL 获取数据并在网页上显示
- JavaScript去除HTML中所有标签的方法
- JS 中高效去除 HTML 标签的方法
- 不同背景色元素如何保持宽度一致
- Visual Studio Code路径提示重复的解决方法
- 怎样使用正则表达式匹配纯中文字符串
- 合同测试:现代软件团队综合指南
- CSS 动画突变效果:实现从一点直接移动到另一点的方法
- 优化JS与HTML代码 提升数据展示效率方法
- 菜单栏下拉后 top 值为何不变且修改后仍失效
- 独立开发人员推销 SaaS 的最佳途径是什么