Redis配置和数据类型
配置
1. bind 127.0.0.1 只有本机才能访问,注释掉
2. daemonize no 默认不是以守护进程访问的,改为yes启用守护进程
3. pidfile /var/run/redis.pid 以守护进程启动时,将pid写入
4. port 6379 端口号
5. timeout 300 当客户端闲置多久后关闭连接,0为关闭功能
6. loglevel 日志级别
7. save 900 1 900s有1次更新,做持久化操作
8. dbfilename dump.rdb 默认的本地数据库名字 dir 本地数据库目录
9. requirepass 设置密码 (发现配置时要空一格,不然会失效)
10. maxclients 最大连接客户端 //默认无限制
11. maxmemory 最大内存 默认256M
ps -ef |grep -i redis 查看redis进程
开启redis服务 redis-server redis.conf
关闭服务 redis-cli shutdown
有密码需要登陆后shutdown
数据类型
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
String(字符串)
命令/操作
set str "test"
get str
注意:一个键最大能存储512MB。
Hash(哈希)
Redis hash 是一个键值(key=>value)对集合。
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。
命令/操作
hmset keyname key1 value1 key2 value2
hget keyname key1
注意:每个 hash 可以存储 232 -1 键值对(40多亿)。
List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
命令/操作
lpush list a # 存入
lrange list 0 1 # 取出
注意:列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。
Set(集合)
Redis的Set是string类型的无序集合。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
sadd set a b c #添加数据
smembers set #显示数据
spop set #随机取出一个元素并删除
srem set a #删除集合中值为a的元素
srandmember set #随机取出一个元素但不删除
sismember set a # 判断是否在集合中,在返回1,不在返回0
scard set #返回元素个数
smove set1 set2 value #把set1的value移到set2里
sinter set1 set2 #返回set1 set2 的交集
sinterstore store set1 set2 #返回set1 set2 的交集并存到store
sunion set1 set2 #返回set1 set2 的并集
sdiff set1 set2 #返回set1 set2 的差集
zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。(重复的元素,如果score有变动,更新score,但是返回0)
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。相同的score不同的元素按照字典排序。
zadd key(key:string) 0.1(score:double) mmm #添加元素
zrange key 0 -1 withscores #显示所有的元素
zrange key 0 1 withscores #显示第一个元素

浙公网安备 33010602011771号