论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
数据库
›
Mysql
›
Redis(主从复制搭建)
Redis(主从复制搭建)
耶耶耶耶耶
金牌会员
|
2024-6-11 13:41:21
|
显示全部楼层
|
阅读模式
楼主
主题
804
|
帖子
804
|
积分
2412
1.主从复制表示图
2.搭建一主多从
1.搭建规划三台机器(一主二从)
2.将两台从Redis服务都按照同样的方式配置(可以理解为Redis初始化)
1.安装Redis
1.yum安装gcc
yum install gcc
复制代码
2.查看gcc版本
gcc --version
复制代码
3.将redis6.2.6上传到/opt目次下
4.进入/opt目次下然后解压
cd /opt && tar -zxvf redis-6.2.6.tar.gz
复制代码
5.进入 redis-6.2.6目次
cd redis-6.2.6
复制代码
6.编译并安装
make && make install
复制代码
7.进入 /usr/local/bin 查看是否有redis的下令
cd /usr/local/bin && ll
复制代码
2.启动并使用Redis
1.进入 /opt/redis-6.2.6/
cd /opt/redis-6.2.6/
复制代码
2.将内里的redis.conf复制一份到/etc下
cp redis.conf /etc/redis.conf
复制代码
3.编辑 /etc/redis.conf,将daemonize no修改成daemonize yes即以保卫进程的方式启动(后台启动)
vim /etc/redis.conf
复制代码
4.启动redis,指定刚才的配置文件
/usr/local/bin/redis-server /etc/redis.conf
复制代码
5.查看redis进程
ps -aux | grep redis
复制代码
3.Redis根本配置
1.修改端口为7489 port
2.设置redis暗码 requirepass
3.使redis支持远程访问 bind
4.登录redis的下令行,关闭redis
/usr/local/bin/redis-cli
复制代码
5.重新启动redis,使配置见效
/usr/local/bin/redis-server /etc/redis.conf
&& ps -aux | grep redis
复制代码
4.开启7489端口
1.宝塔开启端口
systemctl start firewalld && firewall-cmd --permanent --add-port=7489/tcp && firewall-cmd --reload && firewall-cmd --query-port=7489/tcp
复制代码
2.腾讯云开启端口(只答应本机ip访问)
5.Redis长期化配置
1.进入redis配置文件
vim /etc/redis.conf
复制代码
2.dbfilename为redis长期化的文件名(一样寻常不消改)
3.dir修改为/root/则每次长期化的dump.rdb都会在/root/下,恢复时无论在哪里启动,都会读取这个文件进行恢复
4.开启AOF长期化配置,编辑配置文件找到appendonly,设置成yes
5.进入下令行关闭redis,需要指定端口登录
/usr/local/bin/redis-cli
-p 7489
复制代码
6.重新启动redis,使配置见效
/usr/local/bin/redis-server /etc/redis.conf
&& ps -aux | grep redis
复制代码
7.发现/root/下面有两个配置文件,如果没有dump.rdb是因为没有对redis进行操作
6.测试Java连接redis
1.引入jedis的jar包
2.编写测试程序
public static void main(String[] args) {
// 连接服务器的redis命令行
Jedis jedis = new Jedis("xxx", xx);
// 如果redis设置了密码要先进行验证
jedis.auth("******");
String ping = jedis.ping();
System.out.println(ping);
}
复制代码
3.配置Redis的一主二仆
1.在配置之前,将三台的Redis的7489端口完全放开
2.三台机器都进入redis的客户端,将数据全部清除
3.输入 info replication
可以看到目前三台机器都为master
4.在两台从服务上输入 slaveof 主服务ip 主服务端口 来设置主服务
slaveof xxxx xxx
复制代码
5.输入 info replication
来查看角色
1.从服务
2.主服务
3.没连接成功,厥后询问GPT4发现如果主服务器配置了暗码,则需要在从服务器的masterauth 中设置一下暗码
6.为两台从服务器的 masterauth 配置主服务器的暗码,然后测试连接
1.分别设置暗码
2.分别重启
3.从服务器重新配置
slaveof 。。。。。。
复制代码
4.再查看一下主服务器的状态,也是成功连接两台从服务器
info replication
复制代码
7.注意事项和细节
1.如果想要长期化,需要在从服务的配置文件中配置 slaveof … 否则重启主从关系就会消散
2.主服务器可读可写,从服务器只可读
3.主从复制原理分析
1.原理表示图
2.解读
3.细节
1.主服务down掉了的情况
从服务并不会抢占主服务的位置
当主服务重新启动之后,从服务又会指向主服务
2.当从服务down掉了的情况
当再次连接主服务时还是会进行一次全量备份
4.薪火相传
简单来说就是让b是a的slave,c是b的slave
这样c的数据就从b来获取,而写入操作还是从a进行
5.反客为主(是在薪火相传的基础上的)
4.哨兵模式(sentinel)
1.配置哨兵
1.
保持一主二仆的情况即可
2.任意找一台服务器启动哨兵,这里选择在master服务器启动
1.在/etc下面创建一个sentinel.conf的配置文件
touch /etc/sentinel.conf
复制代码
2.编辑文件,设置master的名字,ip+端口以及哨兵的个数,这里是1,还有master的暗码
vim /etc/sentinel.conf
复制代码
sentinel monitor redis_master ........
复制代码
3.再开启一个连接,启动哨兵,指定配置文件
/usr/local/bin/redis-sentinel /etc/sentinel.conf
复制代码
2.测试
1.关闭master
2.等候一会,查看哨兵,可以看到切换了master
3.查看子节点的情况,注意:此时需要重新进行暗码验证
4.重启原来的master,会自动降级为子节点
3.注意事项和细节
1.主机down后的实行流程
2.哨兵挑选新master的依据
3.重启原来的master,会自动降级为子节点
4.如果原来的主节点有暗码,则需要在sentinel.conf 配置auth-pass参数设置暗码
5.关于暗码配置方案
在redis.conf中配置requirepass 以及masterauth 都为相同的暗码,这样各个节点就可以正常连接了
如果是哨兵模式还要在sentinel.conf 配置master的暗码,格式为 sentinel auth-pass master名字yourStrongPassword
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
耶耶耶耶耶
金牌会员
这个人很懒什么都没写!
楼主热帖
为什么你应该停止依赖Jenkins的插件? ...
集合论第6-8章
蜻蜓优化算法(Matlab完整代码实现) ...
腾讯云多媒体文件处理总结
SQL 教程之 10 个 SQL 操作用于 80% 的 ...
axios&spring前后端分离传参规范总结 ...
Python知识点(史上最全)
20220319编译OpenHarmony-v3.1-beta出 ...
JVM常用调优配置参数
计算机的存储容量单位
标签云
挺好的
服务器
快速回复
返回顶部
返回列表