Redis 知识量:6 - 20 - 96
Redis主从复制的原理是:
主节点(master)将数据写入到自己的内存中,并异步地将数据写入到从节点(slave)的内存中。
从节点通过TCP连接与主节点进行通信,定期从主节点获取数据更新,并将更新后的数据写入到自己的内存中。
当从节点接收到来自主节点的更新时,它会记录这些更新操作的命令,并在后续的操作中重放这些命令,以保持与主节点的数据一致性。
如果主节点发生故障,从节点可以选择一个从节点作为新的主节点,以保证服务的高可用性。
在Redis主从复制中,主节点和从节点的数据是异步复制的,这意味着从节点可能不会立即接收到主节点的所有更新。但是,由于Redis的数据持久化机制,即使在主节点发生故障时,从节点仍然可以提供服务。此外,Redis还支持多个从节点同时复制一个主节点,以提高系统的可用性和可扩展性。
Redis主从复制的安装过程包括以下步骤:
1. 准备两台Linux服务器(虚拟机),配置IP地址并保持网络畅通。
2. 在两台服务器上安装Redis。在终端中执行以下命令来下载Redis安装包:
wget http://download.redis.io/releases/redis-3.2.8.tar.gz
解压下载好的Redis安装包到一个指定的目录中:
mkdir -p /opt/module/redis tar -zxvf redis-3.2.8.tar.gz -C /opt/module/redis
进入到Redis的解压目录中,编译安装:
cd /opt/module/redis make & make install
安装完成后,在/usr/local/bin/目录下可以看到Redis的几个脚本文件,如redis-server、redis-cli等。
3. 在第一台服务器上配置主节点。在终端中执行以下命令来启动Redis服务器:
redis-server /path/to/redis.conf
其中,/path/to/redis.conf是Redis配置文件的路径。在配置文件中,找到并修改以下参数:
bind <master-ip> <slave-ip> <slave-ip> ... // 绑定主节点的IP地址和从节点的IP地址 port <port> // 设置Redis服务器的端口号,默认为6379
保存并关闭配置文件。在终端中执行以下命令来启动主节点:
redis-server /path/to/redis.conf &
4. 在第二台服务器上配置从节点。同样地,在终端中执行以下命令来启动Redis服务器:
redis-server /path/to/redis.conf
在配置文件中,找到并修改以下参数:
bind <slave-ip> <slave-ip> ... // 绑定从节点的IP地址和从节点的IP地址(如果有多个从节点) port <port> // 设置Redis服务器的端口号,与主节点一致即可(默认为6379)
保存并关闭配置文件。在终端中执行以下命令来启动从节点:
redis-server /path/to/redis.conf &
5. 在主节点上执行以下命令来设置主节点的复制链接:
redis-cli -h <master-ip> -p <port> slaveof <yes|no> <master-ip> <port> &
其中,<master-ip>和<port>是主节点的IP地址和端口号。执行该命令后,从节点将开始从主节点复制数据。此时,主节点和从节点之间的数据是异步复制的。如果需要同步复制数据,可以使用以下命令:
redis-cli -h <slave-ip> -p <port> sync & // 从节点同步复制数据到主节点(同步复制)
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6