1、常规命令
redis-cli -h 192.168.137.253 -p 6379
# 插入数据
set myname "Tom"
set foo bar
# 获取数据
get foo
get myname
# 获取所有的key
keys *
2、帮助命令
a. help set
描述:查询单个命令的帮助
语法:SET key value [expiration EX seconds|PX milliseconds] [NX|XX]
- NX:如果一个键不存在,再创建并设定值,否则不允许设定
- XX:如果一个键存在则设置建的值,如果不存在则不创建并不设置其值
# 开始没有 name,使用XX 报错
set name "zs" XX // 返回 nil
# 开始没有 name,使用NX -> OK
set name "zs" NX
# 使用 NX 修改 name 的值,键已存在-> nil
set name "li" NX
b. help @string
描述:查看一个命令组的帮助
c. help append
描述:查询string组中单个命令
get name # 返回 -> "zs"
# 向键中追加数据 -> (integer) 3
append name "f"
get name # 返回 -> "zsf"
# 获取值的长度 -> (integer) 3
strlen name
# 删除键 -> (integer) 1
del name
get name # -> (nil)
3、列表操作
描述:键指向一个列表,而列表可以理解为是一个字符串的容器,列表是有众多元素组成的集合,可以在键所指向的列表中附加一个值。
- LPUSH 在列表前面插入一个值(左边加入)
- RPUSH 在列表后面附加一个值(右边加入)
- LPOP 在列表前面弹出一个值(左边弹出)
- RPOP 在列表后面弹出一个值(右边弹出)
- LINDEX 根据索引获取值,指明索引位置进行获取对应的值
- LSET 用于修改指定索引的值为指定的值
# 创建 captain 列表,在左边插入Tom -> (integer) 1
lpush captain Tom
# 获取列表中的一个元素 -> "Tom"
lindex captain 0
# 在列表中的左侧加入一个值 -> (integer) 2
lpush captain Jerry
# 获取列表中的一个元素 -> "Jerry"
lindex captain 0
# 在列表中的右侧加入一个值 -> (integer) 3
rpush captain R
# 获取列表中最后一个元素 -> "R"
lindex captain -1
# 修改列表中最后一个元素的值 -> OK
lset captain -1 RR
# 获取列表中最后一个元素 -> "RR"
lindex captain -1
# 查看列表中元素的个数 -> (integer) 3
llen captain
# 在列表右侧弹出一个元素 -> "RR"
rpop captain
# 在列表左侧弹出一个元素 -> "Jerry"
lpop captain
注意:创建一个新的列表,在帮助中并没产明哪个命令用于创建一个新的列表,实际上创建一个新的列表使用LPUSH或RPUSH都可以。
4、其他命令
a. 清空数据库
- FLUSHDB 删除当前数据库所有key
- FLUSHALL 清空所有库
b. key 的类型
语法:type key_name
none (key不存在) |
string (字符串) |
list (列表) |
set (集合) |
zset (有序集) |
hash (哈希表) |
c. key 过期时间
描述:PEXPIRE 命令用于设置key 的过期时间(以毫秒计),key 过期后将不再可用。
语法:expire key seconds
set name "zs"
# 设置name键过期时间为10ms
expire name 10
get name # 10ms后已过期 -> nil