redis一主一从配置 (同机器下)

环境

        centos7

        建议先学会redis单机安装部署: 单机部署实践

停止redis服务命令

        redis-cli -h 127.0.0.1 -p 6379 -a jt123 shutdown

修改配置文件

        先在安装目录下创建masterslave

        cp redis.conf ./masterslave/redis6379.conf(主机-原来单机版的配置不变)

        cp redis.conf ./masterslave/redis6380.conf(从机)

        修改从机的配置

                slaveof 127.0.0.1 6379(设定目标主机的ip端口)

                port 6380(设定自己的端口,不能与主机的端口相同)
                masterauth jt123(主机的密码)

         修改主机配置

                slave-read-only yes(从机只能读不能写)

实践启动redis-server(主/从)

        启动主机,从机redis-server

        redis-server /usr/local/redis/redis-4.0.8/masterslave/redis6379.conf

        redis-server /usr/local/redis/redis-4.0.8/masterslave/redis6380.conf

        检查是否启动

        

 实践客户端连接测试读写redis-cli(主/从)

        连接主机:redis-cli -h 127.0.0.1 -p 6379 -a jt123

        连接从机:redis-cli -h 127.0.0.1 -p 6380 -a jt123

         

        可以看到从机写入的时候,redis提示read only,到此主从(同服务器)搭建完成。

 

        

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在一主两从的 Redis 服务上配置开机自启动,你需要在每台机器上都进行相应的配置。以下是具体步骤: 1. 首先,你需要在 Redis 主节点和从节点上分别进行以下操作: a. 打开 Redis 配置文件 redis.conf,可以使用 vim 命令进行编辑:`vim /etc/redis/redis.conf`。 b. 找到 daemonize 配置项,将其设置为 yes:`daemonize yes`。这个配置项的作用是让 Redis 以守护进程的方式运行。 c. 找到 bind 配置项,将其设置为当前机器的 IP 地址或者 0.0.0.0:`bind IP地址` 或 `bind 0.0.0.0`,这样可以让 Redis 监听所有网卡的连接请求。 d. 找到 requirepass 配置项,设置 Redis 的访问密码(如果需要):`requirepass yourpassword`。 e. 找到 port 配置项,将其设置为当前 Redis 实例的端口号:`port yourport`。 f. 保存并退出 redis.conf 文件。 2. 接下来,你需要在 Redis 主节点上创建一个启动脚本,可以使用以下命令来创建:`sudo vim /etc/init.d/redis-master`。 3. 将以下脚本内容复制到 redis-master 文件中: ``` #!/bin/sh # # redis-master Startup script for Redis master server # # chkconfig: - 58 74 # description: Redis is a persistent key-value database # processname: redis-server # config: /etc/redis/redis.conf # pidfile: /var/run/redis.pid EXEC=/usr/bin/redis-server CLIEXEC=/usr/bin/redis-cli PIDFILE=/var/run/redis-master.pid CONF="/etc/redis/redis.conf" case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis master server..." $EXEC $CONF & fi if [ "$?"="0" ] then echo "Redis master is running..." fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping Redis master server..." $CLIEXEC -p 6379 shutdown while [ -x /proc/${PID} ] do echo "Waiting for Redis master to shutdown ..." sleep 1 done echo "Redis master stopped" fi ;; *) echo "Please use start or stop as first argument" ;; esac exit 0 ``` 注意:此处的 $EXEC 和 $CLIEXEC 变量需要根据你的实际情况进行修改,确保其指向正确的 Redis 可执行文件和 CLI 工具。 4. 保存并退出 redis-master 文件,并赋予该文件执行权限:`chmod +x /etc/init.d/redis-master`。 5. 使用 chkconfig 命令将 Redis 主节点启动脚本添加到开机启动项中:`sudo chkconfig --add redis-master`。 6. 接下来,你需要在 Redis 从节点上创建一个启动脚本,可以使用以下命令来创建:`sudo vim /etc/init.d/redis-slave`。 7. 将以下脚本内容复制到 redis-slave 文件中: ``` #!/bin/sh # # redis-slave Startup script for Redis slave server # # chkconfig: - 58 74 # description: Redis is a persistent key-value database # processname: redis-server # config: /etc/redis/redis.conf # pidfile: /var/run/redis.pid EXEC=/usr/bin/redis-server CLIEXEC=/usr/bin/redis-cli PIDFILE=/var/run/redis-slave.pid CONF="/etc/redis/redis.conf" case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis slave server..." $EXEC $CONF --slaveof masterip masterport & fi if [ "$?"="0" ] then echo "Redis slave is running..." fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping Redis slave server..." $CLIEXEC -p 6380 shutdown while [ -x /proc/${PID} ] do echo "Waiting for Redis slave to shutdown ..." sleep 1 done echo "Redis slave stopped" fi ;; *) echo "Please use start or stop as first argument" ;; esac exit 0 ``` 注意:此处的 $EXEC 和 $CLIEXEC 变量需要根据你的实际情况进行修改,确保其指向正确的 Redis 可执行文件和 CLI 工具。另外,这里的 --slaveof 参数需要根据你的实际情况进行修改,确保其指向 Redis 主节点的 IP 地址和端口号。 8. 保存并退出 redis-slave 文件,并赋予该文件执行权限:`chmod +x /etc/init.d/redis-slave`。 9. 使用 chkconfig 命令将 Redis 从节点启动脚本添加到开机启动项中:`sudo chkconfig --add redis-slave`。 10. 验证 Redis 是否已经设置为开机自启动:`sudo chkconfig --list redis-master` 和 `sudo chkconfig --list redis-slave`。 以上就是在一主两从的 Redis 服务上配置开机自启动的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值