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 #显示第一个元素

 

posted @ 2019-07-08 23:36  littleTiger  阅读(306)  评论(0)    收藏  举报