redis 如何重启? linux下请输入命令不要用kill 的方式

redis 如何重启? linux下请输入命令不要用kill 的方式,第1张

1、如果是用apt-get或者yum install安装的redis,可以直接通过下面的命令停止/启动/重启redis:/etc/initd/redis-server stop/etc/initd/redis-server start/etc/initd/redis-server restart

2、如果是通过源码安装的redis,则可以通过redis的客户端程序redis-cli的shutdown命令来重启redis。

redis集群如何解决重启不了的问题

redis使用集群部署,如果遇到断电或者服务器重启,当再次启动的时候,有时候会启动不了。需要使用trib的fix命令进行修复。如果修复还是不行的话,可以清除节点数据再重新建集群,前提要备份之后 *** 作。

1、使用redis-cli连接上redis其中一台:redis-cli -c -h xxx -p 7001,输入cluster info查看当前集群的状态。

2、可以使用trib的check检测的集群状态:redis-tribrb check xxx:7001,[ERR] Not all 16384 slots are covered by nodes。

3、如果出现以上的错误,可以尝试使用fix命令修复:redis-tribrb fix xxx:7001。修复完成之后,在使用trib的check命令查看状态。

4、如果通过fix方式修复不了,pkill redis停止之前的redis进程,然后把aof,rdb,nodes节点文件删除,删除之前需要备份。

5、然后启动各个redis节点。

6、创建redis集群:redis-tribrb create --replicas 1 xxx:7000 xxx:7001 xxx:7002 xxx:7003 xxx:7004 xxx:7005。

7、集群创建完成之后,再次连接redis查看集群状态,redis服务已经启动完成。

Redis 连接命令主要是用于连接 redis 服务。

以下实例演示了客户端如何通过密码验证连接到 redis 服务,并检测服务是否在运行:

redis 127001:6379> AUTH "password"

OK

redis 127001:6379> PING

PONG

更多命令详见:>

对于任何一门技术,如果你只停留在「会用」的阶段,那就很难有所成就,甚至还有被裁员和找不到工作的风险,我相信能看此篇文章的你,一定是积极上进想有所作为的人,那么借此机会,我们来深入的解一下 Redis 的执行细节。

一条命令的执行过程有很多细节,但大体可分为:客户端先将用户输入的命令,转化为 Redis 相关的通讯协议,再用 socket 连接的方式将内容发送给服务器端,服务器端在接收到相关内容之后,先将内容转化为具体的执行命令,再判断用户授权信息和其他相关信息,当验证通过之后会执行最终命令,命令执行完之后,会进行相关的信息记录和数据统计,然后再把执行结果发送给客户端,这样一条命令的执行流程就结束了。如果是集群模式的话,主节点还会将命令同步至子节点,下面我们一起来看更加具体的执行流程。

步骤二:客户端先将命令转换成 Redis 协议,然后再通过 socket 连接发送给服务器端

客户端和服务器端是基于 socket 通信的,服务器端在初始化时会创建了一个 socket 监听,用于监测链接客户端的 socket 链接,源码如下:

当 socket 成功连接之后,客户端会先把命令转换成 Redis 通讯协议(RESP 协议,REdis Serialization Protocol)发送给服务器端,这个通信协议是为了保障服务器能最快速的理解命令的含义而制定的,如果没有这个通讯协议,那么 Redis 服务器端要遍历所有的空格以确认此条命令的含义,这样会加大服务器的运算量,而直接发送通讯协议,相当于把服务器端的解析工作交给了每一个客户端,这样会很大程度的提高 Redis 的运行速度。例如,当我们输入 set key val 命令时,客户端会把这个命令转换为 3\r\n$3\r\nSET\r\n$4\r\nKEY\r\n$4\r\nVAL\r\n 协议发送给服务器端。 更多通讯协议,可访问官方文档: >Redis源码获取
1、进入Redis官网获取Redis最新稳定版下载地址
2、通过wget命令下载 Redis 源代码。
Redis编译
1、通过tar -xvf redis-302targz命令解压下载Redis源码压缩包redis-302targz;
2、编译Redis。通过cd redis-302/进入Redis源码目录内,执行make编译Redis;
注意:make命令执行完成编译后,会在src目录下生成6个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump、redis-sentinel
Redis安装配置
1、安装Redis,执行make install。会将make编译生成的可执行文件拷贝到/usr/local/bin目录下;
2、执行/utils/install_serversh配置Redis配置之后Redis能随系统启动。
Redis服务查看、开启、关闭
1、通过ps -ef|grep redis命令查看Redis进程;
2、开启Redis服务 *** 作通过/etc/initd/redis_6379 start命令,也可通过(service redis_6379 start);
3、关闭Redis服务 *** 作通过/etc/initd/redis_6379 stop命令,也可通过(service redis_6379 stop);


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10785305.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存