在CentOS上设置Redis主从复制涉及几个步骤。以下是一个基本的指南:
首先,确保你已经在两台服务器(一台作为主节点,另一台作为从节点)上安装了Redis。
sudo yum install epel-release sudo yum install redis 编辑主节点的Redis配置文件(通常位于 /etc/redis.conf):
sudo vi /etc/redis.conf 找到并修改以下配置项:
bind:绑定到主节点的IP地址。port:Redis监听的端口,默认是6379。requirepass:设置主节点的密码(可选,但推荐)。例如:
bind 192.168.1.100 port 6379 requirepass your_master_password 保存并退出编辑器,然后重启Redis服务:
sudo systemctl restart redis 编辑从节点的Redis配置文件(通常位于 /etc/redis.conf):
sudo vi /etc/redis.conf 找到并修改以下配置项:
slaveof:指定主节点的IP地址和端口。masterauth:如果主节点设置了密码,这里也需要设置。例如:
slaveof 192.168.1.100 6379 masterauth your_master_password 保存并退出编辑器,然后重启Redis服务:
sudo systemctl restart redis 在主节点上,使用 redis-cli 连接到Redis服务器并检查是否正常运行:
redis-cli -h 192.168.1.100 -p 6379 -a your_master_password 在从节点上,使用 redis-cli 连接到Redis服务器并检查是否正常运行:
redis-cli -h 192.168.1.101 -p 6379 -a your_master_password 在从节点上执行以下命令,检查是否成功连接到主节点:
info replication 你应该能看到类似以下的输出,表明从节点已经成功连接到主节点:
# Replication role:slave master_host:192.168.1.100 master_port:6379 master_link_status:up ... 你可以通过在主节点上写入数据,然后在从节点上读取数据来测试读写分离是否正常工作。
在主节点上:
redis-cli -h 192.168.1.100 -p 6379 -a your_master_password set test_key "Hello, Master!" 在从节点上:
redis-cli -h 192.168.1.101 -p 6379 -a your_master_password get test_key 你应该能看到输出 Hello, Master!,表明数据已经成功从主节点复制到从节点。
通过以上步骤,你就可以在CentOS上成功设置Redis的主从复制。