Redis 配置
Redis 配置放在文件名为 redis.conf 的文件中。
1、获取配置信息
语法:
CONFIG GET CONFIG_SETTING_NAME
样例:
192.168.56.101:0>CONFIG GET port 1) port 2) 6379
2、 编辑配置
语法:
CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
样例:
192.168.56.101:0>select 6 //选择数据库,选不选择不影响下面设置操作 OK 192.168.56.101:6>CONFIG GET
timeout1) timeout 2) 0 192.168.56.101:6>CONFIG SET timeout 5000 OK 192.168.
56.101:6>CONFIG GET timeout 1) timeout 2) 5000
数据操作
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
1、String(字符串)
一个key对应一个value。一个键最大能存储512MB。string类型是二进制安全的。
192.168.56.101:6>SET name "hello" //存值 OK 192.168.56.101:6>GET name //取值 hello
2、Hash(哈希)
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。每个 hash 可以存储 232
- 1 键值对(40多亿)。
192.168.56.101:6>HMSET user name "张三" age 18 //存多个值 HMSET KEY_NAME FIELD1
VALUE1 ...FIELDN VALUEN 存单个值用 HSET KEY_NAME FIELD VALUE OK 192.168.56.101:6
>HGET user age//取值 HGET KEY_NAME FIELD_NAME 18 192.168.56.101:6>HGET user name
张三192.168.56.101:6>HGETALL user //所有的字段和值 HGETALL KEY_NAME 1) name 2) 张三 3) age
4) 18 5) sex 6) 男 192.168.56.101:6>HKEYS user //获取key HKEYS key 1) name 2) age 3
) sex192.168.56.101:6>HLEN user //获取哈希表中字段的数量 3
3、List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。列表最多可存储 232 - 1 元素
(4294967295, 每个列表可存储40多亿)。
192.168.56.101:6>lpush users admin //在users List中插入admin 1 192.168.56.101:6
>lpush users guest2 192.168.56.101:6>lpush users zhangsan 3 192.168.56.101:6
>lrange users0 10 //在users list中取出index为0到10的数据,超出的不显示 1) zhangsan 2) guest 3)
admin192.168.56.101:6>lrange users ERR wrong number of arguments for 'lrange'
command 192.168.56.101:6>lrange users 0 3 1) zhangsan 2) guest 3) admin
4、Set(集合)
Redis的Set是string类型的无序集合。值不重复。
sadd 添加一个 string 元素到 key 对应的 set 集合中,成功返回1,如果元素已经在集合中返回 0,如果 key 对应的 set
不存在则返回错误。语法如下;
sadd key member
样例:
192.168.56.101:6>sadd tecq redis //存值 1 192.168.56.101:6>sadd tecq redis
//插入重复的值,会不成功,返回0 0 192.168.56.101:6>sadd tecq moongodb 1 192.168.56.101:6>sadd
tecq rabbitmq1 192.168.56.101:6>smembers tecq //取值 1) rabbitmq 2) moongodb 3)
redis
5、zset(sorted set:有序集合)
Redis zset 和 set
一样也是string类型元素的集合。且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。
zadd命令添加元素到集合,元素在集合中存在则更新对应score,其语法如下:
zadd key score member
样例:
192.168.56.101:6>zadd nosql 0 redis 1 192.168.56.101:6>zadd nosql 20 moongodb 1
192.168.56.101:6>zadd nosql 0 jedis 1 192.168.56.101:6>zadd nosql 2 neo4j 1
192.168.56.101:6>ZRANGEBYSCORE nosql 0 5 //按照 score 从小到大 1) jedis 2) redis 3)
neo4j192.168.56.101:6>ZRANGEBYSCORE nosql 0 0 1) jedis 2) redis 192.168.56.101:6
>ZRANGEBYSCORE nosql0 20 1) jedis 2) redis 3) neo4j 4) moongodb
key 相关
1、EXISTS KEY_NAME 检查给定 key 是否存在。若 key 存在返回 1 ,否则返回 0 。
192.168.56.101:6>exists tecp 0 192.168.56.101:6>exists tecq 1
2、DEL KEY_NAME 删除key。被删除 key 的数量。
192.168.56.101:6>del name 1
3、Expire KEY_NAME TIME_IN_SECONDS 设置 key 的过期时间,单位为 s(秒)。key 过期后将不再可用。设置成功返回 1
。 当 key 不存在或者不能为 key 设置过期时间时(比如在低于 2.1.3 版本的 Redis 中你尝试更新 key 的过期时间)返回 0 。
192.168.56.101:6>set name zhangsan OK 192.168.56.101:6>expire name 30 1
4、 TTL KEY_NAME 以秒为单位返回 key 的剩余过期时间。
192.168.56.101:6>set name zhangsan OK 192.168.56.101:6>expire name 60 1 192.168
.56.101:6>ttl name //已经过了6s 54
热门工具 换一换