Linux 安装部署高性能缓存服务redis

Linux 系统安装Redis 5 注意事项:

  1. 下载Redis 文件包,并上传至linux服务上
  2. 解压
tar -zxvf redis.tar
  1. 安装:
    编译
make PREFIX=/usr/local/redis install

配置:
redis.conf

daemonize yes
bind 127.0.0.1 192.168.1.221
supervised systemd
logfile "/usr/local/redis/log/redis.log"
dir /usr/local/redis/data/6379    【注意:这个目录没有默认:/var/lib/redis/6379  存放dump.rdb的目录, 由于系统默认没有这个目录,导致使用systemctl start redis.service 报错】
requirepass root@123

4、创建redis.service

[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/6379.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

执行命令:
systemctl daemon-reload
systemctl start redis.service
systemctl enable redis.service
systemctl stop redis.service
systemctl status redis.service
systemctl restart redis.service

主从配置:

今天在使用命令slaveof或者是replicaof命令配置redis主从复制时,从机出现master_link_status:down提示,显示主机是down的状态,主机显示没有从机挂载。主要是因为这里的redis配置了密码,可以在slave的配置文件里指定(配从不配主)
在这里插入图片描述在这里插入图片描述主要是因为redis配置了密码导致的,将master和slave的密码配置相同,然后将slave的配置文件中的masterauth属性进行填写,将master的密码写上去即可使用命令slaveof或者是replicaof对master进行指定;

对slave的config配置文件中的两个属性进行配置即可实现开启后自动关联。
在这里插入图片描述全部重启一下:
在这里插入图片描述测试验证一下:
主节点:
127.0.0.1:6379> set aaa aaa
OK
从节点:
127.0.0.1:6379> get aaa
“aaa”
所有从节点都能获取到主节点添加的数据表明主从配置完成!!!

哨兵模式:
vi sentinel.conf

//端口默认为26379。
port:26379
//关闭保护模式,可以外部访问。
protected-mode:no
//设置为后台启动。
daemonize:yes
//日志文件。
logfile:./sentinel.log
//指定主机IP地址和端口,并且指定当有2台哨兵认为主机挂了,则对主机进行容灾切换。
sentinel monitor mymaster 192.168.231.130 6379 2
//当在Redis实例中开启了requirepass,这里就需要提供密码。
sentinel auth-pass mymaster pwdtest@2019
//这里设置了主机多少秒无响应,则认为挂了。
sentinel down-after-milliseconds mymaster 3000
//主备切换时,最多有多少个slave同时对新的master进行同步,这里设置为默认的1。
snetinel parallel-syncs mymaster 1
//故障转移的超时时间,这里设置为三分钟。
sentinel failover-timeout mymaster 180000
port 26379
daemonize yes
protected-mode no
dir "/tmp"
pidfile "/var/run/redis-sentinel.pid"
logfile "/usr/local/redis/log/sentinel.log"
sentinel monitor mymaster 192.168.1.221 6379 2
sentinel auth-pass mymaster root@123   
sentinel down-after-milliseconds mymaster 5000  

配置systemctl 启动:
vi /etc/systemd/system/redis-sentinel.service

[Unit]
Description=redis-sentinel
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-sentinel /usr/local/redis/bin/sentinel.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

systemctl enable redis-sentinel.service
systemctl start redis-sentinel.service

启动sentinel之后,关闭master。从slave服务器上选出一个master出来
使用命令查看master: ./redis-cli -p 6379 -a root@123 info replication

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/779889.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024.3.31 机器学习周报

引言 Abstract 文献阅读 1、题目 Lite-HRNet: A Lightweight High-Resolution Network 2、引言 我们提出了一个高效的高分辨率网络,Lite-HRNet,用于人体姿态估计。首先,我们简单地将Shuf Chronenet中的高效shuffle块应用于HRNet&#x…

逻辑分析仪使用杂记

50MSa为采样深度:对被测信号一次采集的样点总数。它决定了一次采样所能采集到的数据量的多少,深度越大,一次采集的数据量越大。 16MHZ为采样率:对被测信号进行采样的频率,也就是每秒所采集的样点数。它决定了一次采样…

小程序内多种直播方案对比

我可以为您提供一个基于您提供信息的简单对比表,以便您对比视频号直播、小程序直播和三方SDK直播的不同特点和成本。在做出最终决定前,建议您还需要考虑直播质量、用户体验、后续支持和维护等因素。 特点/平台视频号直播小程序直播三方SDK直播直播方式通…

328——二维矩阵值变为1最小操作次数 next、nextInt、nextLine

一、next、nextInt、nextLine区别 1.next() next()不光是接收键盘输入的内容,而且还进行分割。例如默认分隔符为空格 Scanner sc new Scanner(System.in);while (true){String str sc.next();System.out.println(str "A");}// 输出结果 input&#…

【算法】归并排序(迭代法)

简介 归并排序有两种实现方法: 递归法(Top-down implementation)迭代法(Bottom-up implementation)关于归并排序的介绍请看之前的 归并排序(递归法)。 算法步骤(迭代) 设待排列序列有 n 个序列。子序列宽度为 width = 1。 将宽度为 width 的子序列每对相邻两个子序…

备考ICA----Istio实验14---出向流量管控Egress Gateways实验

备考ICA----Istio实验14—出向流量管控Egress Gateways实验 1. 发布测试用 pod kubectl apply -f istio/samples/sleep/sleep.yaml kubectl get pods -l appsleep2. ServiceEntry 创建一个ServiceEntry允许流量访问edition.cnn.com egressgw/edition-ServiceEntry.yaml api…

代码随想录Day38

Day 38 动态规划 part01 今日任务 斐波那契数 爬楼梯 使用最小花费爬楼梯 代码实现 斐波那契数 //递归public int fib(int n) {if (n 0) {return 0;}if (n 1) {return 1;}return fib(n - 1) fib(n - 2);}//动态规划public int fib2(int n) {if (n < 1) return n;in…

科技下乡:数字乡村改变乡村生活方式

在科技飞速发展的时代&#xff0c;数字化、信息化浪潮正以前所未有的速度席卷全球。在这场科技革命中&#xff0c;乡村不再是滞后的代名词&#xff0c;而是成为了数字乡村建设的热土。科技下乡&#xff0c;让数字乡村成为了改变乡村生活方式的重要力量。 一、科技下乡&#xf…

(学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

STM32之HAL开发——I2C读写EEPROM

I2C功能框图&#xff08;F1系列&#xff09; STM32 的 I2C 外设可用作通讯的主机及从机&#xff0c;支持 100Kbit/s 和 400Kbit/s 的速率&#xff0c;支持 7 位、 10 位设备地址&#xff0c;支持 DMA 数据传输&#xff0c;并具有数据校验功能&#xff0c;I2C 外设还支持 SMBus2…

工作日志- 不定期更新

1. protobuf中使用import引用其他proto文件&#xff0c;生成后在go语言的go modules中import 包名报错问题。 public.proto文件 //protoc --go_outpluginsgrpc:. public.proto syntax "proto3";package public;option go_package "self/game-service/msg/pu…

3D产品可视化SaaS

“我们正在走向衰退吗&#xff1f;” “我们已经陷入衰退了吗&#xff1f;” “我们正在步入衰退。” 过去几个月占据头条的问题和陈述引发了关于市场对每个行业影响的讨论和激烈辩论。 特别是对于科技行业来说&#xff0c;过去几周一直很动荡&#xff0c;围绕费用、增长和裁…

Webpack生成企业站静态页面 - ajax请求

一些项目因需求不同&#xff0c;如需SEO或小项目&#xff0c;使用angular、react或vue就大材小用了。可以通过webpack、gulp这些构建工具&#xff0c;也能快速完成html页面开发&#xff0c;并且也能使用less/sass/styus等样式预编译功能&#xff0c;以及将js、html分模块、分组…

RabbitMQ高级笔记

视频链接&#xff1a;【黑马程序员RabbitMQ入门到实战教程】 文章目录 1.发送者的可靠性1.1.生产者重试机制1.2.生产者确认机制1.3.实现生产者确认1.3.1.开启生产者确认1.3.2.定义ReturnCallback1.3.3.定义ConfirmCallback 2.MQ的可靠性2.1.数据持久化2.1.1.交换机持久化2.1.2.…

小米汽车SU7发布,售价21.59万起,订单总额破1亿

文 | 大力财经 小米召开新车发布会&#xff0c;正式发布小米 SU7。该车定位中大型纯电轿车&#xff0c;有 SU7、SU7 Pro、SU7 Max 三个版本&#xff0c;车身尺寸 4997/1963/1455mm&#xff0c;轴距 3000mm。售价 21.59-29.99 万。 新车发布后&#xff0c;市场反应热烈&#x…

Redis 过期删除策略 And 内存淘汰策略 !!!

一、Redis过期删除策略&#xff08;什么时候删除&#xff09; 1、惰性删除&#xff1a;放任键过期不管&#xff0c;但是每次从键空间中获取键时&#xff0c;都检查取得的键是否过期&#xff0c;如果过期的话就删除该键&#xff0c;如果没有过期就返回该键。 2、定期删除&…

Topaz Gigapixel AI for Mac 图像放大软件

Topaz Gigapixel AI for Mac是一款专为Mac用户设计的智能图像放大软件。它采用了人工智能技术&#xff0c;特别是深度学习算法&#xff0c;以提高图像的分辨率和质量&#xff0c;使得图像在放大后仍能保持清晰的细节。这款软件的特点在于其能够将低分辨率的图片放大至高分辨率&…

openPLC_Editor C语言编程 在mp157 arm板上调用io等使用记录

1.编程界面比较简单&#xff0c;具备PLC开发编程的四种编程方式。梯形图语言LD &#xff0c;指令表语言IL&#xff0c;结构化文本语言ST&#xff0c;功能模块图语言FBD。 2.官方使用手册。学习资料实在是太少&#xff0c;目前都是自己比较费劲的研究。 3.2 Creating Your First…

QT6实现音频输出方法

一.QT6音频调用及与QT5的区别 1.音频输入 QAudioSource代替QAudioInput类 QAudioSource类提供了一个接口&#xff0c;用于从音频输入设备接收音频数据。 Header: #include <QAudioSource> qmake: QT multimedia 2.音频输出 QAudioSink代替QAudioOutput类 QAudioSi…

第九届蓝桥杯---航班时间python

1.总结&#xff1a; 时 秒数//3600 分 秒数%3600//60 秒 秒数%60 print(‘{:02d}:{:02d}:{:02d}’.format(res//3600, res%3600//60, res%60)) {:02d}表示输入的整数是两位不足前面补0&#xff0c;d表示整数 # 时间计算函数 def time_caculate(t):m1 t[0].split(":&q…