Redis 系统管理
实验介绍
上一节实验讲述了 Redis 的基本数据类型,本实验继续讲解 Redis 相关命令及管理操作。
在 Redis 中,命令大小写不敏感。
知识点
- 适合全体类型的常用命令
- Redis 时间相关命令
- Redis 设置相关命令
- 查询信息
实验环境
- Xfce 终端
适合人群
本课程难度属于容易,属于初级级别课程。
适合全体类型的常用命令
启动 redis 服务和 redis-cli 命令界面继续后续实验:
sudo service redis-server start
sudo su
cd
redis-cli
EXISTS and DEL
exists
key:判断一个 key 是否存在,存在返回 1,否则返回 0。
del
key:删除某个 key,或是一系列 key,比如:del key1 key2 key3 key4。成功返回 1,失败返回 0(key 值不存在)。
> set mykey hello
> exists mykey
> del mykey
> exists mykey
操作截图:
TYPE and KEYS
type
key:返回某个 key 元素的数据类型(none:不存在,string:字符,list:列表,set:元组,zset:有序集合,hash:哈希),key 不存在返回空。
keys
key—pattern:返回匹配的 key 列表,比如:keys foo* 表示查找 foo 开头的 keys。
> set mykey x
> type mykey
> keys my*
> del mykey
> keys my*
> type mykey
操作截图:
RANDOMKEY and CLEAR
randomkey
:随机获得一个已经存在的 key,如果当前数据库为空,则返回空字符串。
> randomkey
操作截图:
clear
:清除界面。
> clear
RENAME and RENAMENX
rename oldname newname
:更改 key 的名字,新键如果存在将被覆盖。 renamenx oldname newname
:更改 key 的名字,新键如果存在则更新失败。
比如这里 randomkey 结果为 mylist,将此 key 值更名为 newlist。
> randomkey
> rename mylist newlist
> exists mylist
> exists newlist
操作截图:
DBSIZE
dbsize
:返回当前数据库的 key 的总数。
> dbsize
操作截图:
笔者的操作截图:
Redis 时间相关命令
下面我们将会学习 Redis 时间相关命令。
限定 key 生存时间
这同样是一个无视数据类型的命令,对于临时存储很有用处。避免进行大量的 DEL 操作。
expire
:设置某个 key 的过期时间(秒),比如:expire bruce 1000 表示设置 bruce 这个 key 1000 秒后系统自动删除,注意:如果在还没有过期的时候,对值进行了改变,那么那个值会被清除。
> set key some-value
> expire key 10
> get key # 马上执行此命令
> get key # 10s后执行此命令
操作截图:
结果显示:执行 expire 命令后,马上 get 会显示 key 存在;10 秒后再 get 时,key 已经被自动删除。
查询 key 剩余生存时间
限时操作可以在 set 命令中实现,并且可用 ttl 命令查询 key 剩余生存时间。
ttl
:查找某个 key 还有多长时间过期,返回时间单位为秒。
> set key 100 ex 30
> ttl key
> ttl key
操作截图:
清除 key
flushdb
:清空当前数据库中的所有键。 flushall
:清空所有数据库中的所有键。
> flushdb
> flushall
笔者的实验截图:
Redis 设置相关命令
Redis 有其配置文件,可以通过 client-command 窗口查看或者更改相关配置。下面介绍相关命令。
CONFIG GET and CONFIG SET
config get
:用来读取运行 Redis 服务器的配置参数。 config set
:用于更改运行 Redis 服务器的配置参数。 auth
:认证密码。
下面针对 Redis 密码的示例:
> config get requirepass # 查看密码
> config set requirepass test123 # 设置密码为 test123
> config get requirepass # 报错,没有认证
> auth test123 # 认证密码
> config get requirepass
操作截图:
由结果可知,刚开始时 Reids 并未设置密码,密码查询结果为空。然后设置密码为 test123,再次查询报错。经过 auth 命令认证后,可正常查询。
可以通过修改 Redis 的配置文件 redis.conf 修改密码。
config get
命令是以 list 的 key-value 对显示的,如查询数据类型的最大条目:
> config get *max-*-entries*
操作截图:
重置报告
config resetstat
:重置数据统计报告,通常返回值为“OK”。
> CONFIG RESETSTAT
操作截图:
笔者的实验截图:
查询信息
info [section]
:查询 Redis 相关信息。
info 命令可以查询 Redis 几乎所有的信息,其命令选项有如下:
- server: Redis server 的常规信息
- clients: Client 的连接选项
- memory: 存储占用相关信息
- persistence: RDB and AOF 相关信息
- stats: 常规统计
- replication: Master/Slave 请求信息
- cpu: CPU 占用信息统计
- cluster: Redis 集群信息
- keyspace: 数据库信息统计
- all: 返回所有信息
- default: 返回常规设置信息
若命令参数为空,info 命令返回所有信息。
> info keyspace
> info server
操作截图:
笔者的实验截图:
参考文档
http://redis.io/commands/config-resetstat
Comments | NOTHING