您的位置:首页 > 数据库 > Redis

redis自我整理复习(2)

2018-01-24 12:52 232 查看
redis高级命令以及特性介绍


高级命令介绍

1) keys *(返回满足条件的所有键,可以模糊查询)



2)exists是否存在指定的key(存在返回1 否则返回0)



3)expire 设置某个key的过期时间,使用ttl查看剩余时间 (ttl返回的-1表示永久 -2表示已失效,也就是不存在了,其它值就是剩下的时间 )



4)persist取消过期时间



5)select 选择数据库 数据库从0-15(一共16个数据库),默认进入的是0数据库

6)move [key][数据库的下标] 将当前数据库的key转移到其它数据库中



7)randomkey 随机返回数据库里的一个key(基本没什么实际用处)

8)rename 重命名key



9)echo 打印命令

10)dbsize 查看数据库key的数量

11)info获取数据库信息

12)config get 返回相关的配置请求 config get * 返回所有配置



13)flushdb 清空当前数据库 flushall 清空所有数据库 备注:除非是自己的redis,否则不是业务需要线上或其它环境别手贱操作这个命令。一般严禁点的公司,敏感的命令会在启动redis的时候就把这些敏感命令给禁用了。如果没有禁用的情况下,且不小心操作了清空数据库。 弥补方法也是有的,停掉redis,通过rdb或这aof文件来解决,具体细节不懂的可以百度,不做介绍。

redis主从复制介绍

主从复制:

1)Master可以有多个slave

2)多个slave可以连接同一个master外,还可以连接到其他的slave

3)主从复制不会阻塞master,在同步数据时master可以继续处理client请求

4)提供系统的伸缩性

主从复制过程:

1)slave与master建立连接,发送sync同步命令

2)master会开启一个后台进程,将数据库快照保存到文件中,同时master主进程会开始收集新的写命令并缓存

3)后台完成保存后就将文件发送给slave

4)slave将文件保存到磁盘上

主从复制配置:

最简单的假设吧,比如有2台服务器:

master服务器:ipA

slave服务器:ipB

安装redis,假设ipA上已经有了redis。而ipB上还没有。

可以通过scp命令或者在ipB上也安装一台。(现在假设二台服务器都安装好了redis)

master服务器不用改配置,只需要改slave服务器的配置文件即可

修改ipB服务器的redis.conf配置文件。

配置 slaveof mastIP masterPort 【redis主的ip地址以及redis的端口号】

**备注:如果主master服务器的redis设置了权限密码,那slave还得配置个

masterauth masterPwd(主redis的密码) 【但一般没必要设置密码,一般都是走内网,设置权限密码个人觉得没啥必要】**

这里只做简单介绍,具体配置等细节,可以自己去百度相关文章,都是很简单的东西,别想的复杂了。

通过info命令可以查看配置后,主redis的相关信息,如下截图:



哨兵机制 (2.8版本以后的版本哨兵机制才比较稳定)

哨兵的含义就是监控redis系统的运行状况,其主要功能有二点。

1)监控主数据库和从数据库是否正常运行

2)主数据库出现故障时,可以自动将从数据库切换为主数据库,实现自动切换。

实现步骤: 在其中的一台从服务器配置sentinel.conf

(1)copy文件sentinel.conf到redis的配置文件的目录下 比如:/usr/local/redis/etc/中

(2)修改sentinel.conf文件

sentinel monitor mymaster ip port 1 #名称 主redis ip 主redis端口 投票选举次数

sentinel down-after-milliseconds mymaster 5000 #默认1s检测一次,这里配置超时5000毫秒为宕机

sentinel fallover-timeout mymaster 900000 #故障转移时间

sentinel parallel-syncs mymaster 2 #从节点的数量

(3)启动sentinel哨兵

/usr/local/redis/bin/redis-server /usr/local/redis/etc/sentinel.conf –sentinel &

(4)查看哨兵相关信息命令

/usr/local/redis/bin/redis-cli -h ip -p 26379 info Sentinel #ip 哨兵节点服务器的ip

(5)关闭主服务器查看集群信息

/usr/local/redis/bin/redis-cli -h ip -p port shutdown #某一台机器的ip 和端口

备注:具体细节已经详细配置和意思,对这些并不是很清除的,可以单独查询百度相关信息,这里只做简单提及。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: