3、Redis库切换和运维监控命令
一.Redis不同数据库的切换
1.配置文件查看Redis有多少个库?
# 默认是16个
[root@localhost ~]# grep databases /etc/redis.conf
databases 16
2.Redis数据库的切换
>select 0
>select 1
>select 16 #切换不成功 库是从0开始 1-15
3.不同的库数据是独立的
可以在不同的库存储不同的数据
>select 0 #默认也是0库,默认操作的都是0库
>set name s0
>get name
>select 2
>set name s2
>get name
二.Redis运维监控命令
1.查看key
>RANDOMKEY #随机获取一个key
>KEYS * #查看所有key,注意阻塞,如果key量特别大时候,容易卡死阻塞,上千万上百万时候容易阻塞
>SCAN 0 #建议使用,每次获取11个key,可以循环获取,直到获取所有key
#从编号0开始,中间会有一个编号提示(类似索引编号),按编号提示依次循环获取,直到编号为0即表示获取完所有的key
使用Shell批量写入数据并获取
for i in $(seq -w 50);do redis-cli -a redispwd set name${i} test${i}; redis-cli -a redispwd get name${i}; done 2>/dev/null
2.监控命令
redis-cli -a redispwd --stat #监控Redis状态
------- data ------ --------------------- load -------------------- - child -
keys mem clients blocked requests connections
18 855.93K 1 0 49 (+0) 6
18 855.93K 1 0 50 (+1) 6
18 855.93K 1 0 51 (+1) 6
显示多少个key(是把所有数据库的key都加起来) 内存占用多少 客户端有多少 redis的requests请求数是多少 connections是多少连接
--多几个客户端,多增加几个key就可以马上发现
redis-cli -a redispwd monitor #监控数据操作
交互式阻塞状态,当有对数据进行操作时候会记录
--操作的命令,增加,删除数据等都会监控到
redis-cli -a redispwd info #监控系统可通过info获取数据
3.Info常用信息说明,监控工具例如Zabbix使用
Server: # 服务器信息
Clients: # 客户端信息
Memory: # Redis内存占用
used_memory # 数据占用内存
used_memory_rss # 实际使用内存
mem_fragmentation_ratio # 内存碎片化
maxmemory # 最大内存限制
Persistence: #持久化存储信息
rdb_*
aof_enabled:0 # 默认aof是关闭的
Stats: # 状态信息,是监控重点
Replication: # 主从状态监控和哨兵信息
role:master
connected_slaves:0
CPU: # sys、user占用
Cluster: # Redis集群信息
Keyspace: # 键的分布信息,key的分布的库和过期时间等信息
4.单独查看某块内容
redis-cli -a redispwd info Server
redis-cli -a redispwd info Clients
redis-cli -a redispwd info Memory
redis-cli -a redispwd info Persistence
redis-cli -a redispwd info Stats
redis-cli -a redispwd info Replication
redis-cli -a redispwd info CPU
redis-cli -a redispwd info Cluster
redis-cli -a redispwd info Keyspace
三.Redis配置动态更新和写入
1.Redis更新配置的两种方式
a.重启更新,需要修改配置文件,然后重启
b.实时更新,不需要重启
重启更新密码
vim /etc/redis.conf
requirepass redispwd666
动态更新密码
>config get requirepass
>config set requirepass redispwd
>config rewrite #运行时配置写入配置文件
2.查看redis的相关连接数
>info clients #查看当前的redis连接数
>config get maxclients #查看redis允许的最大连接数
3.大部分配置都能通过config命令进行更改,然后写入配置文件(使用比较方便)
例如:修改redis最大连接数
> config get maxclients #查看默认设置,最大客户端数为10000
1) "maxclients"
2) "10000"
>config set maxclients 20000
> config get maxclients
1) "maxclients"
2) "20000"