1,CentOS 安装 redis-cli步骤如下:
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make redis-cli
2,linux操作redis
到 redis-cli安装的目录找到 redis-cli然后执行命令
./redis-cli -h + 地址
然后输入密码:
auth+密码
如图既连接成功
列出一些常用命令:
ping 测试是否连通
dbsize 返回当前库key的数量
select [db] 切换reis库
exit/quit 退出redis命令
keys * 显示redis库中的所有的key
exists [key...] 库中是否存在 key
ttl [key] 查询 key 过期的剩余时间
type [key] 查询key的数据类型
del [key] 删除指定key
flushall 清空全部库 ,清空redis中所有的数据,谨慎。容易挨打
flushdb 清空当前库
redis的数据类型:
redis 的数据类型,使用map集合键值对key,value 举例,主要指的是value 的数据类型。也就是存储的数据类型:
- string 类型
- hash 类型
- 列表类型
- 集合类型 ——set 无序
- 有序集合类型——zset
操作string类型的命令:
1,set [key] [value] 添加数据
2,get [key] 获取key 的值,返回value
3,incr [key] 自增命令,不存在key时,自动设置一个数值为‘1’的值,存在且为数值的字符串则自动加1
4,decr [key] 自减命令 ,存在数值类型则减去1,不存在则设置值为‘-1’
5,append [key] [value] 在key 的值后面,拼接value
6,strlen [len] 返回key值的长度
7,getrange [key] [start] [end] 返回key值 start 到 end 之间的字符串
8,setrange [key] [offset] [value] 从key 值的 offset 位置 替换value,长度与value 一致。例如:key 的值为 ‘123456789’ ,offset 为2 ,value 为‘qwe’ , 替换后结果:‘12qwe6789’
9,mset [key] [value] [key] [value] .... 同时添加一个或者多个String 类型的数据
10,mget [key] ... 获取多个key 值
(1)hash(哈希)类型数据
1,hset [key] [field] [value] :添加hash类型数据,如果key不存在,添加新key。若field不存在,添加成功返回1,存在,原有的值被覆盖(替换),返回0
2,hget [key] [field] :获取key的field域的值
3,hmset [key] [field value] ... : 添加key 的多个field域的value值
4,hmget [key] [field1 field2 ....] :获取key的 多个field域 的值
5,hmgetall [key] :获取key的所有的field域的值
6,hdel [key] [field1 field2 ...] :删除key的多个field域
7,hkeys [key] :获取key 的所有field域。
8,hvals [key] : 获取所有key的value值
9,hexists [key] [field] :是否存在key的field域,存在返回1,不存在返回0
(2)list 列表数据
redis 的list 数据是简单的字符串列表,可以通过左右两边插入,索引从0开始。
1,lpush [key] [value1 value2 ...] :从左边一次加入一个或多个值,返回列表长度
2,rpush [key] [value1 value2 ...] :从右边一次加入一个或多个值,返回列表长度
3,lrange [key] [start] [stop] :获取key 的索引start 到 stop 的值
4,lindex [key] [index] :获取key 的索引为index的值,不存在索引返回nil
5,llen [key] :返回key的列表长度
6,lram [key] [count] [value] :count>0 从列表左侧开始删除value,count<0 从右侧删除,删除个数为count,返回删除个数
7,linsert [key] before|after [pivot] [value] :将value 插入到key中元素pivot之前|之后。返回key的长度。没有pivot 返回-1,没有key 返回0
8,lset [key] [index] [value] :将key的下标为index的值设为value
9,lpop [key] :从左侧弹出key中最左侧的值
10,rpop [key] : 从右侧弹出key中最右侧的值
(3)set 集合类型
集合类型,存储的成员无序且唯一。
1,sadd [key] [member...] :向key中添加多个成员。返回添加成员的个数,添加重复的成员,视作无添加,不计成员个数。
2,smember [key] :获取key的所有成员
3,sismember [key] [member] :判断key中是否存在成员member,存在返回1,否则返回0
4,scard [key] :获取key 的长度
5,srem [key] [member1 member2 ...] :删除key中 成员,返回删除个数,不存在忽略
6,srandmemer [key] [count] :随机的获取key中count个成员,返回成员
7,spop [key] [cout] : 随机的删除key中count个成员,返回被删除的成员
(4)有序集合 zeset
有序且不重复的集合
1,zadd [key] [score1 member1] [score2 member2] ... :新增key中一个或者多个 数字score与member(成员)
2,zrange [key] [start] [stop] withscores : 查询有序集合key 从start到stop索引的成员member 。返回结果按照score进行排序,withscores显示score,0标识第一个元素,1是第二个,-1是最后一个
3,zrevrange [key] [sart] [stop] withscores :score从大到小查询key的成员member,0标识第一个,-1最后一个
4,zrem [key] [member] :删除key 的成员member
5,zcard [key] :查询有序集合 key 的大小(成员个数)
6,zrangebyscore [key] min max [withscore] [limit offset count] :查询score介于min与max之间的成员,limit 可做分页查询,从下标offset开始count个有序集合key的成员
7,zrevrangebyscore [key] max min [withscore] [limit offset count] :从大到小反序查找
8,zcount [key] min max :查询score 介于min与max之间的个数