redis数据库笔记
Redis是由意大利人开发的一款内存高速缓存的数据库,是一个高性能的键值对(key-value)存储数据库。
Redis全称为:Remote Dictionary Server(远程数据服务),使用C语言编写,并以内存作为数据存储介质,所以读取的效率极高。
Redis不仅仅支持简单的key-value类型的数据,同时还把value分为list,set,zset,hash等数据结构存储。
因为Redis交换数据快,所以在服务器中常用来存储一些需要频繁调取的数据,提高效率。
1.Redis 基本使用:
01.连接Redis: redis-cli
02.退出:exit
03.却换数据库:select n (n为却换数据库的默认的库的序号,数据库没有名称,默认的是16个,0-15,默认进入的是第一个数据库)
04.操作服务端:service redis start/stop/restart/
redis五大数据类型使用:list, set ,Zset, hash,string.
string类型:string 是redis最基本的类型,一个key对应一个value。
set key value 设置数据
get key 查看数据
append key value 追加数据
del key 删除数据
key-value:mset key1 value1 key2 value2....设置多个数据
全局key操作:对redis的五个数据类型都适用的命令。
key * 查看所有的key
删除键值对:del key
exists key 查看key是否存在。
改名:rename key new_name
设置过期时间:expire key seconds (用在验证码这方面是很多的)
ttl 查看设置的时间, persist key 删除过期时间
list类型:list类型是一个字符串列表,可以在列表头部或尾部添加/删除数据,在插入数据时,如果该键不存在,redis将为该键创建一个。
1.添加数据:rpush key value
lpush key value [value.....] -------头部添加数据 (left左 right右)
2.查看数据:lrange key stare stop
lindex key index --------查看某个数据
3.修改数据:lset key index value
4.删除数据:rpop key
lpop key -----------头部删除数据
Hash类型:是一个键值(key=>value)对集合。是string类型的field和value的映射表
user { name:juhao, age:18 }
user --》 key(键) name,age --》field(域) juhao,18 ---》value(值)
添加数据:hset key field value {‘key’: {‘field’: ‘value’}}
查看域值:hget key field
hgetall key ---》 查看所有的field和value
查看所有的value:hvals key
查看所有的field:hkeys key
set类型为无序的字符集合,元素具有唯一性,不重复。
添加数据:sadd key member [member …]
查看数据:smembers key
随机删除:spop key
指定删除:srem key member [member …]
Z set类型:每一个成员都会有一个分数(score)与之关联。成员是唯一的,但是分数却是可以重复的。
添加数据: zadd key score member [score2 member2 …]
查看数据: zrange key start stop
zrangebyscore key min max --》 通过scores值查看
删除数据:zrem key member [member …]
通过索引删除多个数据:zremrangebyrank key min max
zremrangebyscore key min max ---》 通过scores值删除