一, Redis 基础操作
1.1,string 类型及操作
string 是最简单的类型, 一个 key 对应一个 value,string 类型是二进制安全的. Redis 的 string 可以包含任何数据.
1,set: 设置值
- 127.0.0.1:6379> set name haha
- OK
2,setnx: 设置值, 如果键已经存在则返回 0, 否则返回 1
- 127.0.0.1:6379> setnx name haha
- (integer) 0
- 127.0.0.1:6379> setnx info a
- (integer) 1
3,get: 获取键对应的值
- 127.0.0.1:6379> get name
- "haha"
4,mset,mget: 设置或者获取多个键值对
- 127.0.0.1:6379> MSET name haha age 18 sex nv
- OK
- 127.0.0.1:6379> MGET name age sex
- 1) "haha"
- 2) "18"
- 3) "nv"
5,incrby: 对 key 的值做加加 (指定值) 操作, 并返回新的值
- 127.0.0.1:6379> INCRBY age 2
- (integer) 22
6,incr: 对 key 的值做加值, 并返回新的值
- 127.0.0.1:6379> INCR age
- (integer) 19
7,del: 删除一个已创建的 key
- 127.0.0.1:6379> del name
- (integer) 1
1.2,hash 类型及操作
Redis hash 是一个 string 类型的 field(字段)和 value 的映射表, hash 特别适合用于存储对象, 相较于将对象的每个字段存成单个 string 类型, 将一个对象存储在 hash 类型中会占用更少的内存, 并且可以更方便的存取整个对象.
1,hset: 设置 hash field 为指定值, 如果 key 不存在, 则先创建.
- 127.0.0.1:6379> HSET dic name huahua
- (integer) 1
2,hget,hmset,hmget, 与上面的 string 类似
- 127.0.0.1:6379> HMSET dic1 name ah age 18
- OK
3, hdel: 删除制定表中的某一个键值对
- 127.0.0.1:6379> HDEL dic1 name
- (integer) 1
4,hgetall: 列出表中的所有键值对
- 127.0.0.1:6379> HGETALL dic1
- 1) "age"
- 2) "18"
1.3,list 类型及操作
list 是一个链表结构, 主要功能是 push,pop, 获取一个范围内的所有值等等, 操作中 key 理解为链表的名字. Redis 的 list 类型其实就是一个每个子元素都是 string 类型的双向链表. 我们可以通过 push,pop 操作从链表的头部或尾部添加删除元素.
1,lpush: 在 key 对应 list 从左添加字符串元素
- 127.0.0.1:6379> LPUSH name haha ee nnn
- (integer) 3
2,lrange: 在 key 对应 list 从左遍历字符串元素, 需指定起始和结束索引
- 127.0.0.1:6379> LRANGE name 0 -1
- 1) "nnn"
- 2) "ee"
- 3) "haha"
3,lpop: 在 key 对应 list 从左删除一个元素
- 127.0.0.1:6379> LPOP name
- "nnn"
4,rpop,rpush 类似, 不过是从 list 右边插入与删除
1.4,Set 类型及操作
set 是集合, 他是 string 类型的无序集合. Set 是通过 hash table 实现的, 对集 , 交集, 差集. 通过这些操作, 集合不允许有重复值.
1,sadd: 添加一个或多个元素到集合中
- 127.0.0.1:6379> sadd k1 1 2 3 4 5
- (integer) 5
2,smembers: 获取集合里面所有的元素
- 127.0.0.1:6379> SMEMBERS k1
- 1) "1"
- 2) "2"
- 3) "3"
- 4) "4"
- 5) "5"
3,srem: 从集合中删除指定的一个或多个元素
- 127.0.0.1:6379> SREM k1 2
- (integer) 1
4,spop: 随机从集合中删除一个元素, 并返回
- 127.0.0.1:6379> SPOP k1
- "3"
5,sdiff: 返回集合 1 与集合 2 的差集
- 127.0.0.1:6379> SDIFF k1 k2
- 1) "1"
6,sinter: 获得两个集合的交集
- 127.0.0.1:6379> SINTER k1 k2
- 1) "4"
- 2) "5"
7,sinter: 获得两个集合的交集
- 127.0.0.1:6379> SUNION k1 k2
- 1) "1"
- 2) "3"
- 3) "4"
- 4) "5"
- 5) "6"
1.5 zset 类型及操作
zset 是 set 的一个升级版本, 它在 set 的基础上增加了一个顺序属性, 这一属性在添加修改元素的时候可以指定, 每次指定后, zset 会自动重新按新的值调整顺序. 可以理解为有两列的 MySQL 表, 一列存的 value, 一列存的顺序. 操作中 key 理解为 zset 的名字.
1,zadd: 向一个指定的有序集合中添加元素, 每一个元素会对应的有一个分数. 你可以指定多个分数 / 成员组合. 如果一个指定的成员已经在对应的有序集合中了, 那么其分数就会被更新成最新的, 并且该成员会重新调整到正确的位置, 以确保集合有序. 分数的值必须是一个表示数字的字符串.
- 127.0.0.1:6379> ZADD xx 1 zs 2 ls
- (integer) 2
2,zrange: 返回有序集合中, 指定区间内的成员. 其中成员按照 score(分数)值从小到大排序.
- 127.0.0.1:6379> ZRANGE xx 0 -1
- 1) "zs"
- 2) "ls"
3,zrem: 删除有序集合内元素
- 127.0.0.1:6379> ZREM xx zs
- (integer) 1
4,zcard: 返回有序集合元素的个数
- 127.0.0.1:6379> ZCARD xx
- (integer) 1
二, 其他命令
1,keys: 按照键名查找指定的键. 支持通配符(* ? 等)
- 127.0.0.1:6379> keys *
- 1) "age"
- 2) "dics"
- 3) "dic"
- 4) "sex"
- 5) "xx"
2, exists: 确认一个键是否存在(1 表示存在)
- 127.0.0.1:6379> EXISTS age
- (integer) 1
3, del: 删除一个键(通用)
- 127.0.0.1:6379> del age
- (integer) 1
4,expire: 设置一个键 (已存在) 的过期时间, 如果键已经过期, 将会被自动删除
- 127.0.0.1:6379> EXPIRE age 20
- (integer) 0
5,ttl: 以秒为单位, 返回指定键的剩余有效时间
当 key 不存在时, 返回 -2
当 key 存在但没有设置剩余生存时间时, 返回 -1
否则, 以秒为单位, 返回 key 的剩余生存时间.
- 127.0.0.1:6379> TTL age
- (integer) -2
- 127.0.0.1:6379> ttl k2
- (integer) -1
6,select: 选择一个数据库, 默认连接的数据库是 0, 可以支持共 16 个数据库. 在配置文件中, 通过 databases 16 关键字定义.
- 127.0.0.1:6379> SELECT 1
- OK
- 127.0.0.1:6379[1]> keys *
- 1) "k1"
7,move: 将当前数据库的键移动到指定的数据库中
- 127.0.0.1:6379> MOVE k1 1
- (integer) 1
8,type: 返回键的类型
- 127.0.0.1:6379[1]> TYPE k1
- set
9,dbsize: 返回当前库中键的数量
- 127.0.0.1:6379> DBSIZE
- (integer) 10
10,save: 保存所有的数据. 很少在生产环境直接使用 SAVE 命令, 因为它会阻塞所有的客户端的请求, 可以使用 BGSAVE 命令代替. 如果在 BGSAVE 命令的保存数据的子进程发生错误的时, 用 SAVE 命令保存最新的数据是最后的手段.
11,info: 获取服务器的详细信息
12,config get: 获取 Redis 服务器配置文件中的参数. 支持通配符
- 127.0.0.1:6379> CONFIG GET *
- # 获取所以配置参数
- 127.0.0.1:6379> CONFIG GET port
- 1) "port"
- 2) "6379"
13,flushdb: 删除当前数据库中所有的数据
14.,flushall: 删除所有数据库中的所有数据
来源: https://www.cnblogs.com/hjnzs/p/12210759.html