Linux,redis群集模式,主从复制,读写分离

redis的群集模式

主从模式 (单项复制,主复制到从)

一主两从

一台主机上的一主两从

需要修改三个配置文件 主要端口不一样

redis-8001.conf

redis-8002.conf

redis-8003.conf

哨兵模式

分布式集群模式

redis 安装部署

1,下载或者上传redis 6.2.14

wget http://download.redis.io/releases/redis-6.2.14.tar.gz //下载

scp c:\redis-6.2.14.tar.gz root@192.168.10.12:/root //将下载到本机的源码包上传到虚拟机

2,将源码包解压到 /usr/local/ 下

tar -zxvf redis-6.2.14.tar.gz -C /usr/local/

3,将解压包改名

cd /usr/local

mv redis-6.2.14 redis

4,安装依赖

yum clean all

yum makecache fast

yum -y install gcc gcc-c++ make tcl (utbuntu 安装 依赖关系 gcc make tcl)

gcc --version //查看gcc 版本

5,进入解压包 安装redis

进入redis目录,输入make

cd /usr/local/redis

make && make install

6,启动服务

进入src目录,输入./redis-server

cd src

./redis-server

7、再打开一个终端

redis-cli //进入redis数据库

shutdown

exit //退出

8、修改配置文件

cd /usr/local/redis/

vim redis.conf

|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| daemonize yes (259) yes、no (yes启用守护进程,默认no不以守护进程运行) bind 0.0.0.0 (75) 绑定的主机地址,如果需要设置远程访问则直接将这个属性备注 protected-mode no (94) 控制了是否可以远程访问 需远程访问改为 no requirepass 123 (903) 设置 Redis 连接密码 默认关闭 |

一,复制redis.conf

在/usr/local/redis目下,将redis.conf复制成三份分别取名为:redis-8001.conf、redis-8002.conf、redis-8003.conf三个配置文件

cp redis.conf redis-8001.conf

cp redis.conf redis-8002.conf

cp redis.conf redis-8003.conf

二,配置主机 (以redis-8001为主机)

修改 redis-8001.conf 配置文件

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #bind 127.0.0.1 #将bind注释掉 或 bind 0.0.0.0 75 port 8001 #改变其端口 98 daemonize yes #修改服务为后台运行 259 pidfile /var/run/redis_8001.pid #指定不同的pid文件,注意三份配置文件不同。 291 logfile "/usr/local/redis/log/redis_8001.log" #指定log日志路径,要求不同。 304 dir /usr/local/redis/data/redis_8001 #这个指定rdb文件和aof文件的路径配置,要求改成不同。 456 masterauth 123 #从服务到主服务的认证密码。 486 requirepass 123 #三份文件都配置,客户端访问需要密码验证。 903 |

三,配置从机 (以redis-8002,redis-8003为从)

修改 redis-8002.conf 配置文件

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #bind 127.0.0.1 #将bind注释掉 或 bind 0.0.0.0 port 8002 daemonize yes pidfile /var/run/redis_8002.pid logfile "/usr/local/redis/log/redis_8002.log" 。 dir /usr/local/redis/data/redis_8002 replicaof 127.0.0.1 8001 #从服务配置需要开启。配置主服务的ip的port。 479 masterauth 123 requirepass 123 |

修改 redis-8003.conf 配置文件

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #bind 127.0.0.1 #将bind注释掉 或 bind 0.0.0.0 port 8003 daemonize yes pidfile /var/run/redis_8003.pid logfile "/usr/local/redis/log/redis_8003.log"。 dir /usr/local/redis/data/redis_8003 replicaof 127.0.0.1 8001 #从服务配置需要开启。配置主服务的ip的port。 479 masterauth 123 requirepass 123 |

四,在 redis 安装目录下创建 /data 和各自的存放 rdb aof 文件的文件夹

cd /usr/local/redis

mkdir data log

cd data

mkdir redis_800{1,2,3}

五,开启服务

cd /usr/local/redis

redis-server redis-8000.conf

redis-server redis-8001.conf

redis-server redis-8002.conf

六、查看服务端口,是否启动

ss -anpt | grep redis

七,开启三个终端

redis-cli -p 8001 -a 123

redis-cli -p 8002 -a 123

redis-cli -p 8003 -a 123

八,查看主从信息

在各终端中输入 info replication 查看

主服务器

从服务器

九 读写分离验证

主服务器 8001 可以写入 可读

从服务器 8002 8003 只能读 不能写

相关推荐
Maki Winster2 分钟前
在 Ubuntu 下配置 oh-my-posh —— 普通用户 + root 各自使用独立主题(共享可执行)
linux·运维·ubuntu
守望时空335 分钟前
Linux下KDE桌面创建自定义右键菜单
linux
泊浮目9 分钟前
未来数据库硬件-网络篇
数据库·架构·云计算
静若繁花_jingjing23 分钟前
Redis线程模型
java·数据库·redis
l0sgAi25 分钟前
vLLM在RTX50系显卡上部署大模型-使用wsl2
linux·人工智能
翻滚吧键盘34 分钟前
debian及衍生发行版apt包管理常见操作
运维·debian
kfepiza43 分钟前
CentOS-7的"ifupdown"与Debian的"ifupdown"对比 笔记250706
centos
Charlene Fung2 小时前
vs code远程自动登录服务器,无需手动输入密码的终极方案(windows版)
运维·服务器·vscode·ssh
麟城Lincoln2 小时前
【RHCSA-Linux考试题目笔记(自用)】servera的题目
linux·笔记·考试·rhcsa
碣石潇湘无限路2 小时前
【部署与总结】从本地运行到公网服务器的全过程
运维·服务器