REDIS命令
以下命令中,{host}为redis实例服务器IP地址,{port}为服务端口,默认6379。
一般常用命令
redis服务启动
redis-server redis.conf
redis服务关闭
redis-cli -h {host} -p {port} --user {username} -a {password} shutdown [save|nosave]
redis基本信息
redis-cli -h {host} -p {port} --user {username} -a {password} info [{parameter}]
其中,parameter可以是以下关键字:
- server
- clients
- memory
- persistence
- stats
- replication
- cpu
- cluster
- keyspace
redis日志路径
redis-cli -h {host} -p {port} --user {username} -a {password} config get logfile
检查服务是否可用
redis-cli -h {host} -p {port} --user {username} -a {password} ping
统计key总数
redis-cli -h {host} -p {port} --user {username} -a {password} dbsize
后台进程重写AOF
redis-cli -h {host} -p {port} --user {username} -a {password} bgrewriteaof
后台保存rdb快照
redis-cli -h {host} -p {port} --user {username} -a {password} bgsave
保存rdb快照
redis-cli -h {host} -p {port} --user {username} -a {password} save
上次保存时间
redis-cli -h {host} -p {port} --user {username} -a {password} lastsave
清空所有库所有键(高危操作)
redis-cli -h {host} -p {port} --user {username} -a {password} flushall
清空当前库所有键(高危操作)
redis-cli -h {host} -p {port} --user {username} -a {password} flushdb
查看当前连接客户端
redis-cli -h {host} -p {port} --user {username} -a {password} client list
杀掉某个客户端
redis-cli -h {host} -p {port} --user {username} -a {password} client kill {client_addr}
获取相关参数
redis-cli -h {host} -p {port} --user {username} -a {password} config get {parameter}
设置相关参数
redis-cli -h {host} -p {port} --user {username} -a {password} config set {parameter}
重置info统计信息
redis-cli -h {host} -p {port} --user {username} -a {password} config resetstat
查看redis慢查询
redis-cli -h {host} -p {port} --user {username} -a {password} slowlog get
redis慢查询数量
redis-cli -h {host} -p {port} --user {username} -a {password} slowlog len
慢查询记录
redis-cli -h {host} -p {port} --user {username} -a {password} slowlog reset
实时监控
redis-cli -h {host} -p {port} --user {username} -a {password} monitor
查看节点角色
redis-cli -h {host} -p {port} --user {username} -a {password} role
查看配置的ACL用户及权限
redis-cli -h {host} -p {port} --user {username} -a {password} acl list
哨兵模式常用命令
redis哨兵启动
redis-sentinel sentinel.conf
redis哨兵信息
redis-cli -p {sentinel_port} info [{parameter}]
从指定节点复制数据
redis-cli -h {host} -p {port} --user {username} -a {password} replicaof {host} {port}
执行数据复制
redis-cli -h {host} -p {port} --user {username} -a {password} sync
集群模式常用命令
redis集群添加节点
redis-cli -h {host} -p {port} --user {username} -a {password} cluster meet {host} {port}
redis集群信息查看
redis-cli -h {host} -p {port} --user {username} -a {password} cluster nodes
redis集群分配槽位
redis-cli -h {host} -p {port} --user {username} -a {password} cluster addslots {{n1}..{n2}}
集群节点建立复制
redis-cli -h {host} -p {port} --user {username} -a {password} cluster replicate {node_id}
集群配置保存
redis-cli -h {host} -p {port} --user {username} -a {password} cluster saveconfig
执行数据同步
redis-cli -h {host} -p {port} --user {username} -a {password} sync
性能测试常用命令
测试redis性能
redis-benchmark -h {host} -p {port} -c {concurrency} -n {requests}
测试指定字节的数据包的性能
redis-benchmark -h {host} -p {port} -q -d {bytes}
测试某些命令性能、
redis-benchmark -t {command1,command2} -n {requests} -q
测试某些数值存取的性能
redis-benchmark -n {requests} -q script load "redis.call('set','foo','bar')"
SENTINEL命令
如果要连接到SENTINEL节点,将IP地址改为哨兵节点的地址和端口(默认26379)。
获取指定参数值
redis-cli -h {host} -p 26379 sentinel config get <param_name>
配置指定参数值
redis-cli -h {host} -p 26379 sentinel config set <param_name> <param_value>
根据名字获取主实例节点IP和端口
redis-cli -h {host} -p 26379 sentinel get-master-addr-by-name <master_name>
获取主实例状态信息
redis-cli -h {host} -p 26379 sentinel master <master_name>
获取主实例/从实例/哨兵节点的状态信息
redis-cli -h {host} -p 26379 sentinel masters
redis-cli -h {host} -p 26379 sentinel replicas <master_name>
redis-cli -h {host} -p 26379 sentinel sentinels <master_name>
强制故障转移,不考虑原主实例是否可达,也不需事先征得其他节点投票同意
redis-cli -h {host} -p 26379 sentinel failover <master_name>
获取基本信息
redis-cli -h {host} -p 26379 info [<param>]
检查客户端连接
redis-cli -h {host} -p 26379 client list
References:
【1】https://redis.io/commands/info/
【2】https://redis.io/docs/management/sentinel/#sentinel-commands