redis服务器管理(redis服务器篇)

服务器管理

命令与工具

检查连接是否正常

PING
使用客户端向 Redis 服务器发送一个 PING ,如果客户端与服务器之间的连接正常,并且服务器的运作也正常的话,那么命令将返回一个PONG 。
通常用于测试网络连接和服务器状态,或者用于测量延迟值。

 redis> PING
 PONG
 redis> PING
 Could not connect to Redis at 127.0.0.1:6379: Connection refused
查看服务器信息

INFO [section]
查看 Redis 服务器的各种信息和统计数值。 通过给定可选的 section 参数,可以指定命令要返回的信息内容。

 redis> INFO
 # Server
 redis_version:2.9.11
 redis_git_sha1:937384d0
 redis_git_dirty:0
 redis_build_id:8e9509442863f22
 redis_mode:standalone
 ..........
SECTION 参数的值(1/2)

在这里插入图片描述

SECTION 参数的值(2/2)

在这里插入图片描述

查看服务器正在执行的命令

MONITOR
实时地打印出 Redis 服务器接收到的命令,格式 为“时间戳 [数据库号码 IP地址和端口号] 被执行的命令”。

 redis> MONITOR
 OK
 1378822099.421623 [0 127.0.0.1:56604] "PING"
 1378822105.089572 [0 127.0.0.1:56604] "SET" "msg" "hello world"
 1378822109.036925 [0 127.0.0.1:56604] "SET" "number" "123"
 1378822140.649496 [0 127.0.0.1:56604] "SADD" "fruits" "Apple" "Banana" "Cherry"
 1378822154.117160 [0 127.0.0.1:56604] "EXPIRE" "msg" "10086"
 1378822257.329412 [0 127.0.0.1:56604] "KEYS" "*"
 1378822258.690131 [0 127.0.0.1:56604] "DBSIZE"
发现执行缓慢的命令

慢查询功能

记录慢查询日志

Redis 的慢查询功能用于将执行时间超过指定时长的命令记录起来,并向用户展示那些被记录的命令,方便用户发现运行缓慢的命令,并进行针对性的优化。

慢查询功能可以通过以下两个配置选项来进行设置:
slowlog-log-slower-than
执行时长超过 microseconds 微秒的命令将被记录,将这个值设置为负数表示关闭慢查询功能。
默认值为 10000 ,也即是 1/100 秒,因为 1 秒 = 1 百万微秒。
slowlog-max-len
慢查询日志的最大数量,当记录的日志超过这个数量时,新日志会覆盖旧日志( FIFO)。
默认值为 128 。

查看慢查询日志

SLOWLOG GET [number]
返回服务器目前记录的慢查询日志。
如果给定可选的 number 参数,那么只返回最多 number 条日志;否则的话,返回所有慢查询日志。

# 为测试需要,将 slowlog-log-slower-than 设成了 10 微秒
 redis> SLOWLOG GET
 1) 1) (integer) 12 # 唯一的日志标识符
 2) (integer) 1324097834 # 被记录命令的执行时间,以 UNIX 时间戳格式表示
 3) (integer) 16 # 命令执行耗费的时长,以微秒为单位
 4) 1) "CONFIG" # 被执行的命令,以数组的形式排列
 2) "GET" # 这里完整的命令是 CONFIG GET slowlog-log-slower-than
 3) "slowlog-log-slower-than"
慢查询日志的其他命令

在这里插入图片描述

redis> SLOWLOG LEN
 (integer) 14
 redis> SLOWLOG RESET
 OK
 redis> SLOWLOG LEN
 (integer) 0
服务器的加锁与解锁

通过配置选项 requirepass ,用户可以为服务器设置密码。当客户端连接一个带密码的服务器时,它必须执行 AUTH 命令来进行解锁,否则这个客户端就不能执行除 AUTH 以外的其他命令。

举个例子,如果我们在服务器启动时,用以下方式给服务器设置了密码:

$ redis-server --requirepass helloworld
 那么连接服务器的客户端必须在解锁之后才能执行其他命令:
 redis> PING
 (error) NOAUTH Authentication required.
 redis> AUTH helloworld
 OK
 redis> PING
 PONG
关闭服务器

SHUTDOWN [option]
在不给定 option 参数的情况下,服务器会先执行持久化操作:
• 如果打开了 AOF 持久化,那么调用 fdatasync ,确保之前执行的命令能够被写入到硬盘。
• 如果打开了 RDB 持久化并且数据库已经发生了变化,那么执行 SAVE 命令。
在以上操作都完成之后,服 务器关闭。

在打开了持久化功能的情况下,使用 SHUTDOWN 命令关闭服务器不会丢失任何数据。

option 选项的值可以是 save 或者 nosave :
• SHUTDOWN save 在关闭之前总是执行 SAVE 命令,用于在没有开启 RDB 持久化的情况下,创建一个 RDB 文件来保存数据;
• SHUTDOWN nosave 在关闭之前不执行 SAVE 命令,用于在数据库可能已经出错的情况下,避免将错误的数据保存到 RDB 文件里面。

现成的 Redis 管理工具

RedisLive、Redis-Commander 和 RedMon

RedisLive

使用 Python 编写的 Redis 实时监视工具

界面
在这里插入图片描述
被监视的服务器地址和端口号。
内存占用、键的数量、客户端数量、
已执行命令数量、上线时间。
内存占用情况。
命令执行情况。
最常执行的命令。
最常被处理的键。
更多信息
安装方法和使用说明: http://www.nkrode.com/article/real-time-dashboard-for-redis

Redis Commander

Node.js 编写的 Redis 管理工具

界面
在这里插入图片描述
查看服务器已有的键
在这里插入图片描述
添加键功能
在这里插入图片描述
目前只支持添加字符串、列表、集合和有序集合,不支持添加散列和 HyperLogLog 。

执行命令
在这里插入图片描述
嵌入式文档
在这里插入图片描述
更多信息
安装和使用简介: http://joeferner.github.io/redis-commander/
启动之后访问 http://localhost:8081/ 就可以看见界面。

Redmon

Ruby 编写的 Redis 管理工具

界面
在这里插入图片描述
命令行
在这里插入图片描述
查看和设置配置选项
在这里插入图片描述

现有工具的缺点

不够强大 不够稳定
目前还没有强大并且稳定的工具被开源出来。
重度使用 Redis 的公司一般都会自己构建管理工具。

复习

服务器管理命令

PING —— 检查网络连接以及服务器是否正常运作。
INFO —— 查看服务器当前的状态信息和统计信息。
MONITOR —— 查看服务器正在执行的命令。
SLOWLOG —— 记录并查看执行时间超过指定时长的命令。
requirepass 选项加锁服务器,使用 AUTH 命令解锁。
SHUTDOWN —— 关闭服务器。

目前没有强大且稳定的开源 Redis 管理软件,有需要的话需要自己去写。

发布了252 篇原创文章 · 获赞 151 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39885372/article/details/104281589