Redis免费开源,高性能
是一key_value的存储系统,支持string,hash,list,set,zset(有序集合)
Redis启动
Redis-cli
Ping 测试与redis服务器是否联通
Select 选择数据库,redis有从0到15,共16个数据库
Select 3 选择3号数据库
Select 0选择0号数据库
登录到redis客户端,如果没有选择操作默认选择0号数据库
存储的数据都是按照键值对保存的(k,v)
键的类型是字符串: 值类型分为字符串,hash,list,set,zset
set k y 如果有对应的k则为修改
setex为设置过期时间,过期时间单位为秒 格式为:setex key second value
mset设置多个键值对 mset key1 value key2 value2
mget获取多个值 mget key1 key2
append 追加值 在原来的value上追加
del key 删除
Keys *查找键 查找是否有对应的key
exits 判断键是否存在 有返回1没有返回0
type 查看键对应的值(value)的类型
expire设置已有键的过期时间
expire user 200 user过期时间为200s
ttlkey查看有效时间,无过期(永远有效)返回-1,键不存在返回-2
Hash存储键值对集合
设置单个键为huser1字段‘name’的值为‘tom’
键 值
Hset huser1 name user1 格式为 huser1 name user1
设置多个字段
Hmset huser2 name Mary sex female
Type huser2 输出为hash
获取指定键所有字段 hkeys huser2输出name,sex
获取一个字段的值: hget huser2 name
获取多个字段的值:hmget huser2 name sex
获取所有字段的值:hvals huser2
获取所有字段名包括值一起输出:hgetall huser2
删除
hdel huser2 sex
只删除键 del huser1(键字段值)
列表list
列表中按照每个值的添加顺序排列的
增加
从左边添加值
Lpush key value1 value2
从右侧添加值
Rpush key value1 value2
在指定值的前或后插入值
Linsert key before或after
Linsert luser1 before cc 11在cc前面插入11
获取列表的值,第一个值的索引是0
索引可以为负数,-1代表最后一个值
lrang luser1 0 -1 输出列表的所有值
修改值
设置指定位置的索引
lset luser1 1 china 把索引位置为1的值修改为china
删除指定值(将列表中前count次出现的值移除)
lren key count value
Count>0从头到尾删除
Count<0 从尾到头删除
Count=0 删除所有的值
Lrem luser2 -1 h1从右边删除一个h1
Lrem luser2 0 h1 删除所有的h1
无序集合set(对于集合中的值只能添加与删除不能修改)
集合中不允许有重复的值
Sadd key value1 value2
获取集合的值
Smembers key
Srem删除指定值
Srem key value
有序集合(不允许有重复的值)
集合中每一个值对应一个分数,根据分数的大小排序
只能添加修改不能删除
增加
Zadd key score1 value1 score value2
获取
Zrange zuser 0 -1