命令
- PING
使用客户端向 Redis 服务器发送一个 PING ,如果客户端与服务器之间的连接正常,并且服务器的运作也正常的话,那么命令将返回一个 PONG
通常用于测试网络连接和服务器状态,或者用于测量延迟值
127.0.0.1:6379> ping
PONG
- INFO [section]
查看 Redis 服务器的各种信息和统计数值。
通过给定可选的 section 参数,可以指定命令要返回的信息内容
SECTION参数值
值 | 展示的信息 |
all | 所有服务器信息 |
default(默认值) | 默认被选中的,最常见也最重要的一些服务器信息 |
server | 服务器本身的信息,比如版本号、 监听端口号、服务器 ID等 |
clients | 已连接客户端的信息,比如已连接客户端的数量、正在被阻塞的客 户端数量等 |
memoery | 内存信息,比如内存占用数量、使用的内存分配器等 |
persistence | 和 RDB 持久化以及 AOF 持久化有关的信息,比如 RDB 持久化是否正在进行、AOF 文件重写是否正在进行等 |
stats | 服务器的统计信息,比如已处理的命令请求数量、每秒钟处理的命令请求数量等 |
replication | 和主从复制有关的信息,比如服 务器的角色、主从服务器的连接状态是否正常等 |
cpu | 服务器的系统 CPU 占用量和用户 CPU 占用量 |
commandstats | 命令执行的统计信息,比如命令执行的次数、命令耗费的 CPU 时间、执行每个命令耗费的平均 CPU 时间等 |
cluster | 集群功能的相关信息 |
keyspace | 和数据库键空间有关的信息,比如数据库的键数量、数据库已经被删除的过期键数量等 |
- MONITOR
实时地打印出 Redis 服务器接收到的命令,格式为“时间戳 [数据库号码 IP地址和端口号] 被执行的命令
127.0.0.1:6379> MONITOR
OK
1567543223.752616 [0 127.0.0.1:34000] "auth" "123456"
1567543225.352941 [0 127.0.0.1:34000] "get" "msg"
1567543231.264352 [0 127.0.0.1:34000] "set" "msg" "hi"
慢查询功能
Redis 的慢查询功能用于将执行时间超过指定时长的命令记录起来,并向用户展示那些被记录的命令,方便用户发现运行缓慢的命令,并进行针对性的优化
慢查询功能设置:
- slowlog-log-slower-than <microseconds>
执行时长超过 microseconds 微秒的命令将被记录,将这个值设置为负数表示关闭慢查询功能
默认值为 10000 ,也即是 1/100 秒,因为 1 秒 = 1 百万微秒 - slowlog-max-len <length>
慢查询日志的最大数量,当记录的日志超过这个数量时,新日志会覆盖旧日志(FIFO)
默认值为 128
查看慢查询日志:
- SLOWLOG GET [number]
返回服务器目前记录的慢查询日志。
如果给定可选的 number 参数,那么只返回最多 number 条日志;否则的话,返回所有慢查询日志 - SLOWLOG LEN
查看目前已有的慢查询日志数量 - SLOWLOG RESET
删除所有慢查询日志
服务器设置密码
- 通过配置选项 requirepass ,用户可以为服务器设置密码
当客户端连接一个带密码的服务器时,它必须执行 AUTH 命令来进行解锁,否则这个客户端就不能执行除 AUTH 以外的其他命令
[root@localhost redis-5.0.4]# redis-cli
127.0.0.1:6379> get msg
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> get msg
"hi"
关闭服务器
SHUTDOWN [option]
- 不给定 option 参数的情况下,服务器会先执行持久化操作:
如果打开了AOF持久化,那么调用 fdatasync ,确保之前执行的命令能够被写入到硬盘
如果打开了RDB持久化并且数据库已经发生了变化,那么执行SAVE命令
在以上操作都完成之后,服务器关闭 - 在打开了持久化功能的情况下,使用SHUTDOWN命令关闭服务器不会丢失任何数据。option选项的值可以是save或者nosave
SHUTDOWN save:在关闭之前总是执行 SAVE命令,用于在没有开启 RDB 持久化的情况下,创建一个RDB文件来保存数据
SHUTDOWN nosave: 在关闭之前不执行 SAVE命令,用于在数据库可能已经出错的情况下,避免将错误的数据保存到 RDB 文件里面