启动redis
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
启动sentinel
/usr/local/redis/src/redis-sentinel /usr/loca/redis/sentinel.conf
客户端连接redis
/usr/local/redis/src/redis-cli -p 6379
指定端口启动,如果是默认端口,可以省略-p 6379 参数
验证密码
auth yourpassword
1. 字符串类型相关指令
set key value;(如果key以存在,之前的value将会被覆盖)
get key;(返回value值,不存在返回null)
append key value;返回字符串长度;(如果key不存在,则存储为新的key)
获取字符串长度:strlen key;
添加新的数据并同时设置生命周期:setex key seconds value;
当key值不存在时添加数据:setnx key value;key值不存在时添加,返回结果1;key值已存在不添加,返回结果0;
批量添加新的数据:mset key1 value1 key2 value2 key3 value3(中间使用空格隔开)
批量获取数据:mget key1 key2 key3 (中间使用空格隔开)
批量添加key不存在的数据:msetnx key1 value1 key2 value2...(所有key都不存在设置成功,只要有一个存在设置失败)
2. 有序可重复列表list
1。将一个或多个值依次插入列表的表头:lpush key value1 value2 ...(若该key已存在,将新值追加在原来的列表中)(l:left)
2。获取列表中指定下标区间的元素:lrange key startIndex endIndex (从0开始并且包含endindex那一项这个和常用下表注意下区别,最后一项为列表长度-1,也可以直接使用-1表示最后一项)
3。将一个或多个值依次插入列表的表尾:rpush key value1 value2 ...(若该key已存在,将新值追加在原来的列表中)(r:right)
4。删除指定列表的表头元素并返回:lpop key;
5。删除指定列表的表尾元素并返回:rpop key;
6。获取指定列表中指定下标的元素并返回:lindex key index
7。获取指定列表的长度:llen key
8。根据count的值移除列表中的指定的某一些元素并返回移除成功的个数:lrem key count value(count>0:从表头开始数前n个(如果有)和value值相同的;count<0:从表尾开始数前n个(如果有)和value值相同的;count=0:移除所有跟value相同的元素)【n=count】
3. 双列集合hash
1。将一个或多个键值对存储到指定集合中:hset key filed value ...
2。获取hash表中指定的filed值:hget key filed;
3。批量获取hash表中指定的filed值:hmget key filed1 filed2...;
4。获取指定hash表中的所有filed和value:hgetall key;
5。删除指定hash表中的一个或者多个filed:hdel key filed1 filed2...
6。获取指定hash表中所有的filed的个数:hlen key
7。判断指定hash表中指定的filed是否存在:hexists key filed
8。获取指定hash表中所有filed的列表:hkeys key;
9。获取指定hash表中所有value的值:hvals key;
我们可以看到hash类型没有hsetex hpsetex一类的方法,想对hash对象做过期策略可以使用全局函数expire,单位为秒:
expire key seconds
通配符查找符合条件的key
keys pattern
pattern可以使用通配符 *匹配任意字符0个或多个 ?匹配0或者1个字符 []匹配中括号内任意元字符
判断key是否存在
exists key ;判断1个key是否存在,存在返回1,不存在返回0。
exists key [key key ...];判断多个key是否存在,返回存在的个数
移动key到指定的数据库
move:移动指定的key到指定的数据库实例(Redis默认有16个库),用户默认使用第0个库
语法:move key index
查看key的剩余生存时间
ttl:查看key的剩余生存时间
语法:ttl key ;返回值:-1:没有设置生存时间;-2:该key不存在
设置key的剩余时间
expire:设置key的最大生存时间
语法:expire key seconds
查看key的数据类型
type:查看指定key的数据类型
语法:type key
重命名key
rename:重命名指定key
语法:rename key newkey
删除一个或者多个key和value
del:删除指定key和value
语法:del key:删除一个key,
del key [key key ...]:删除多个key
返回值:删除实际删除数据条数
增加/减少 value值
decrby:减去指定值
语法:decrby key num
incrby:增加指定值
语法:incrby key num
关闭客户端连接
exit