2018-1-1 by Atlas

通篇概览redis基础指令。

1. 数据库方面

  • 客户端服务端测通
PING
PONG
  • 获取服务器信息
INFO
  • 切换数据库
SELECT 1
OK

redis数据库默认存在索引0~15共16个数据库实例,默认使用第0号实例。

  • 清空数据库
FLUSHDB
OK

友情提示:这是个危险命令,执行前最好先执行SELECT命令显示切换到目标数据库,然后再执行。

  • 数据库键数量
DBSIZE
(integer) 0
  • 添加新键
SET date "2017-12-31"
OK
  • 对键取值
GET date
"2017-12-31"

GET dat
(nil)
  • 是否存在键
EXISTS date
(integer) 1

EXISTS dat
(integer) 0
  • 更新键值
SET date "2018-1-1"
OK
  • 重命名键
RENAME date date1
OK
  • 查找所有符合给定模式 pattern 的 key
KEYS *
1) "date0"
2) "date1"
  • 删除键
DEL date1
  • 过期键

EXPIRE 用于将键的生存时间设置为 ttl 秒。
PEXPIRE 用于将键的生存时间设置为 ttl 毫秒。
EXPIREAT 用于将键的过期时间设置为 timestamp 所指定的秒数时间戳。
PEXPIREAT 用于将键的过期时间设置为 timestamp 所指定的毫秒数时间戳。

EXPIRE date0 100

EXPIREAT date1 1514825405
  • 查看键的剩余生存时间

TTL 用于返回键的剩余生存时间秒数。
PTTL 用于返回键的剩余生存时间毫秒数。

TTL date0
(integer) 92

PTTL date0
(integer) 70719
  • 移除过期时间
PERSIST date0
(integer) 1
  • RDB持久化
SAVE

2. 数据类型方面

2.1.列表操作

  • 添加元素:给列表userList从右边压入字符串James。
RPUSH userList James
  • 列表范围:如下命令获取从0(左侧起始位置)到-1(右侧最后一个位置)之间的所有元素,并且包含起始位置的元素。
LRANGE userList 0 -1
  • 列表长度:
LLEN userList
  • 移除元素:从userList左侧移除第一个元素。
LPOP userList
  • 设置元素:设置userList位置0处为新值,对包含空格的字符串使用引号括起来。
LSET userList 0 "Damon S"
  • 裁剪列表:执行如下命令后,列表userList只包含原始列表从位置0到0的连续元素。
LTRIM userList 0 0

2.2.哈希操作

  • 添加元素:给哈希表person添加键为name,值为James的成员。
HSET person name Atlas
  • 获取元素:获取哈希表person中键name所对应的value值。
HGET person name
  • 返回哈希表所有的key:
HKEYS person
  • 返回哈希表所有的value:
HVALS person

2.3.集合操作

  • 添加元素:可同时添加多个元素。
SADD fruit apple
SADD fruit pear
  • 查看集合中的所有元素:
SMEMBERS fruit
  • 集合大小:返回集合中包含的元素的个数。
SCARD fruit
  • 集合中是否包含元素:
SISMEMBER fruit pear
  • 集合的运算:如下命令返回集合food和fruit的并集,另外还有交集(sinter)、差集(sdiff)运算。
SUNION food fruit
SINTER food fruit
SDIFF food fruit
  • 移除元素:
SREM fruit apple

2.4.有序集合操作

  • 添加元素:根据第二个参数进行排序。
ZADD user 2 James
  • 集合范围:找到从0到-1的所有元素,并且是有序的。
ZRANGE user 0 -1
  • 重复添加:存在相同的value,权重参数更新为3。
ZADD user 3 James

3. 集群方面