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
在 Linux 环境下启动 Redis,可以通过以下几种方式进行操作,具体取决于安装方式和需求。 ### 使用 redis-server 启动 如果已经将 Redis 编译安装,并且配置文件 `redis.conf` 已经复制到合适的位置(如 `/etc/redis/`),可以直接使用 `redis-server` 命令启动服务。例如: ```bash redis-server /etc/redis/redis.conf ``` 这种方式会以前台模式运行 Redis,若希望以后台进程方式运行,则可以在配置文件中设置 `daemonize yes` 选项,这样 Redis 将以守护进程的方式运行[^3]。 ### 通过 init 脚本管理 Redis 服务 对于 CentOS 或 Red Hat 系统,可以创建一个系统级别的 init 脚本用于管理 Redis 服务。例如,创建脚本 `/etc/init.d/redis_6379` 并添加如下内容(根据实际情况调整): ```bash #!/bin/sh # # redis Startup script for Redis server # # chkconfig: - 85 15 # description: Redis is a persistent key-value database # PATH=/usr/local/bin:/sbin:/usr/bin:/bin REDISPORT=6379 EXEC=/usr/local/bin/redis-server REDIS_CLI=/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 if [ "$?"="0" ]; then echo "Redis is running..." fi ;; stop) if [ ! -f $PIDFILE ]; then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping ..." $REDIS_CLI -p $REDISPORT SHUTDOWN while [ -x ${PIDFILE} ] 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_${REDISPORT} {start|stop|restart|force-reload}" >&2 exit 1 ;; esac ``` 确保脚本具有可执行权限后,可以通过以下命令控制 Redis 服务: ```bash chmod +x /etc/init.d/redis_6379 chkconfig --add redis_6379 service redis_6379 start ``` 此方法适用于需要长期运行的生产环境,并支持开机自启等功能[^2]。 ### systemd 方式启动 Redis(适用于较新版本的 Linux 发行版) 在基于 systemd 的 Linux 系统上,还可以创建一个服务单元文件 `/etc/systemd/system/redis.service` 来管理 Redis 服务。示例内容如下: ``` [Unit] Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target ``` 保存文件后,重新加载 systemd 配置并启用 Redis 服务: ```bash sudo systemctl daemon-reload sudo systemctl enable redis sudo systemctl start redis ``` 这种方法提供了更现代的服务管理机制,并支持自动重启等高级功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值