redis的启动方式

redis的启动方式

1.直接启动

进入redis根目录,执行命令:

#加上'&'号使redis以后台程序方式运行

复制代码
./redis-server &

2.通过指定配置文件启动

可以为redis服务启动指定配置文件,例如配置为/etc/redis/6379.conf

进入redis根目录,输入命令:

复制代码
redis-server redis.windows.conf

#如果更改了端口,使用redis-cli客户端连接时,也需要指定端口,例如:

复制代码
redis-cli -p 6380

3.使用redis启动脚本设置开机自启动

启动脚本 redis_init_script 位于位于Redis的 /utils/ 目录下,redis_init_script脚本代码如下:

复制代码
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
 
#redis服务器监听的端口
REDISPORT=6379
 
#服务端所处位置
EXEC=/usr/local/bin/redis-server
 
#客户端位置
CLIEXEC=/usr/local/bin/redis-cli
 
#redis的PID文件位置,需要修改
PIDFILE=/var/run/redis_${REDISPORT}.pid
 
#redis的配置文件位置,需将${REDISPORT}修改为文件名
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
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac

根据启动脚本,将修改好的配置文件复制到指定目录下,用root用户进行操作:

复制代码
mkdir /etc/redis
cp redis.conf /etc/redis/6379.conf

将启动脚本复制到/etc/init.d目录下,本例将启动脚本命名为redisd(通常都以d结尾表示是后台自启动服务)。

复制代码
cp redis_init_script /etc/init.d/redisd

设置为开机自启动,直接配置开启自启动 chkconfig redisd on 发现错误: service redisd does not support chkconfig

解决办法,在启动脚本开头添加如下注释来修改运行级别:

复制代码
#!/bin/sh
# chkconfig:   2345 90 10

再设置即可

复制代码
#设置为开机自启动服务器
chkconfig redisd on
#打开服务
service redisd start
#关闭服务
service redisd stop
相关推荐
李少兄2 小时前
领域驱动设计与 Clean Code 的实践
java·数据库·领域驱动
Mr. zhihao2 小时前
[特殊字符] 从 Redis 缓存穿透到布隆过滤器,再到布谷鸟过滤器:一次穿透防护的进化之旅
数据库·redis·缓存
@小匠2 小时前
Redis 7 持久化机制
数据库·redis·缓存
Geoffwo2 小时前
Oracle MySQL8.0升级8.4,无感升级数据库
数据库·oracle
u0110225122 小时前
如何自定义查询历史记录面板的展示风格_时间轴样式设计
jvm·数据库·python
2301_769340672 小时前
HTML怎么实现快捷跳转顶部_HTML固定悬浮锚点按钮【介绍】
jvm·数据库·python
m0_609160492 小时前
MySQL如何限制触发器递归调用的深度_防止触发器死循环方法
jvm·数据库·python
呼Lu噜2 小时前
基于C#的ASP.NET Core中分析async、await的使用场景
数据库·c#·asp.net
李白的天不白2 小时前
大规模请求数据并发问题
java·前端·数据库
zjy277772 小时前
Golang bcrypt如何加密密码_Golang密码加密教程【收藏】
jvm·数据库·python