redis
说明:工作中使用过mongodb数据库,但没有使用过redis,现在工作中需要使用redis,因此将redis使用总结如下,后续持续更新。
安装
$ sudo apt-get update
$ sudo apt-get install redis-server
启动
$ redis-server # 这种方式启动redis 使用的是默认配置
查看是否启动
打开另外一个命令窗口
$ redis-cli # 连接本地的redis服务
redis 127.0.0.1:6379>
$ Ping # 检测 redis 服务是否启动
PNOG
数据类型
String(字符串)
string
类型是二进制安全的, 可以包含任何数据。比如jpg图片或者序列化的对象。
string
类型是 Redis 最基本的数据类型,string
类型的值最大能存储 512MB。
127.0.0.1:6379> SET 'demo' 'demo'
OK
127.0.0.1:6379> GET demo
"demo"
127.0.0.1:6379> DEL demo
(integer) 1
127.0.0.1:6379> GET demo
(nil)
Hash(哈希)
Redis hash 是一个键值(key=>value)对集合。
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。
每个 hash 可以存储 232 -1 键值对(40多亿)
127.0.0.1:6379> HMSET demo field1 val01
OK
127.0.0.1:6379> HGET demo field1
"val01"
127.0.0.1:6379> DEL demo
(integer) 1
List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。
127.0.0.1:6379> lpush demo demo01
(integer) 1
127.0.0.1:6379> lpush demo demo02
(integer) 2
127.0.0.1:6379> lpush demo demo03
(integer) 3
127.0.0.1:6379> lrange demo 0 10
1) "demo03"
2) "demo02"
3) "demo01"
127.0.0.1:6379> DEL demo
(integer) 1
127.0.0.1:6379>
Set(集合)
Redis 的 Set 是 string 类型的无序集合。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
sadd 命令
添加一个 string 元素到 key 对应的 set 集合中,成功返回 1,如果元素已经在集合中返回 0。
集合内元素具有唯一性,第二次插入的元素将被忽略
集合中最大的成员数为 232 - 1(4294967295, 每个集合可存储40多亿个成员)。
127.0.0.1:6379> sadd demo 01
(integer) 1
127.0.0.1:6379> sadd demo 02
(integer) 1
127.0.0.1:6379> sadd demo 02
(integer) 0
127.0.0.1:6379> sadd demo 03
(integer) 1
127.0.0.1:6379> smembers demo
1) "01"
2) "02"
3) "03"
127.0.0.1:6379> DEl demo
(integer) 1
zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。
127.0.0.1:6379> zadd demo 0 demo01
(integer) 1
127.0.0.1:6379> zadd demo 1 demo02
(integer) 1
127.0.0.1:6379> zadd demo 1 demo02
(integer) 0
127.0.0.1:6379> zadd demo 2 demo03
(integer) 1
127.0.0.1:6379> zadd demo 0 demo04
(integer) 1
127.0.0.1:6379> ZRANGEBYSCORE demo 0 10
1) "demo01"
2) "demo04"
3) "demo02"
4) "demo03"
127.0.0.1:6379> DEL demo
(integer) 1
命令
查看数据库的数量
127.0.0.1:6379> CONFIG GET databases
选择数据库
127.0.0.1:6379> SET db_number 0 # 默认使用 0 号数据库
OK
127.0.0.1:6379> SELECT 1 # 使用 1 号数据库
OK