Redis操作命令详解

以下命令基于linux,windows下除启动命令有一点差别之外其他一样。

1、启动命令

1.1、进入redis src目录

默认启动:./redis-server
指定端口:./redis-server --port 6379
指定配置文件:./redis-server ../redis.conf

1.2、进入操作平台

默认启动:./redis-cli
指定端口:./redis-cli -p 6379
指定IP:./redis-cli -p 6379 -h 127.0.0.1
指定密码:./redis-cli -p 6379 -a 123456
save:人为保存到磁盘(直接ctrl+c将会丢失刚操作的数据)

1.3、终止进程会触发保存(正确的终止命令)

默认终止:./redis-cli shutdown
指定端口:./redis-cli  -p 6379 shutdown
指定IP:./redis-cli -p 6379 -h 127.0.0.1 shutdown

2、配置文件:集群密码配置

redis.conf 查找下面的节点位置

requirepass redis密码
masterauth 主redis密码

3、客户端命令

进入redis-cli

info:查看数据库、系统等相关信息。
select 1: 切换1数据库(redis默认0-15共16个数据库空间)。
flushdb:清除当前的数据库数据。
flushall:清除所有数据库数据。
dbsize:查询当前数据库数据统计。
ping:测试当前连接是否正常(正常返回PONG)。
save:保存到磁盘
quit:退出client控制台

4、键命令

4.1 设值命令

set key value:插入键值对,key存在则覆盖。
mset a a1 b b1 c c1 d d1:同时设置多个key。
setnx key value:设置前先判断,key存在则不设值(0:失败 1:成功)。
msetnx key value key2 value2:全部成功才设值(0:失败 1:成功)。
setex key 100 c:设置key有效期100秒,value是c(秒)。
psetex key 10000 d:设置key有效期10秒,value是d(毫秒)。

4.2 取值命令

get key:查询key的value。
getrange key 0 2:获取key的值并截取从0到2个字符。
getset:先get再set,设置新的值并能获取旧的值。
mget a b c d:同时获取多个key的value。

4.3 key的相关命令

del key:删除key。
key *:查看所有key。
exists key:判断key是否存在(1:存在 0:不存在)。
ttl key:查看key的剩余过期时间,单位秒(-1:没有过期时间,-2:不存在)。
expire key 10:设置key过期时间为10秒。
type key:查看key的数据类型。
randomkey:随机key。
rename key key2:重命名key(key2存在则覆盖)。
renamenx key key2:重命名key(key2存在则不更改)。

strlen key:获取key的value长度。
incr key:使key的value+1并返回(value必须是Integer,否则报错)。
incrby key 100:使key的value+100并返回(value必须是Integer,否则报错)。
decr key:使key的value-1并返回(value必须是Integer,否则报错)。
decrby key 100:使key的value-100并返回(value必须是Integer,否则报错)。
append key value2:使key的value追加value2。

5、hash命令

5.1 设值命令

hset map name value:设值一个名字叫map的map类型数据(1:成功 0:失败)。 
hmset map newname newnamevalue newage newagevalue:设值map的多个key跟value。
hsetnx map name value:设值前先判断map是否存在name,有则不更新(1:成功 0:失败)。

5.2 取值命令

hget map name:获取map的name属性的value。(不存在返回null)
hmget map name name2:获取map的多个key对应的value。
hgetall map:获取map的所有key value。

5.3 key相关命令

hdel map name age:删除map的多个key。
type map:返回hash。
hlen map:获取map的key个数。
hexists map name:判断map是否存在一个name的属性(1:存在 0:不存在)。 
hkeys map:获取map的所有key。
hvals map:获取map的所有value。

6、list(列表集合)命令

lpush list 1 2 3 4 5 6 7 8 9 10:设值一个名字叫list的list类型数据(1:成功 0:失败)。
keys *:查询有key。
type list:查看key数据类型。
llen list:查看list的值个数。
lrange list 0 2:查看list第0-2数据。(结果:10,9,8。最后放的在最前面)。
lset list 0 100:设值list的第0个元素为100。
lindex list 5:获取list的下标为5的元素。
lpop list:移除list第一个元素并返回元素的值。
rpop list:移除list最后一个元素并返回元素的值。

7、set(无序集合)命令

sadd set a b c d:设值一个名字为set的set类型数据,元素不可重复(1:成功 0:失败)。
keys *:查询所有key。
type set:查看set的数据类型(set)。
scard set:返回set集合的数量。
rename set set1:重命名set。
smembers set:查询set所有元素,结果是无序的。
sdiff set1 set2:查询set1在set2中不存在的。
sinter set1 set2:查询set1和set2都存在的(合集)。
sunion set1 set2:查询set1和set2的所有元素(并集)。
srandmember set1 2:返回set1集合中2个随机元素。
sismember set1 a:判断a是否set1集合中的成员元素(1:是 0:不是)。
srem set1 a b:移除set1集合中a和b元素,并返回成功条数。
spop set2:移除set2集合中随机一个元素,并返回元素值。

8、sortedset(有序集合)命令

zadd sortedset1 100 a 200 b 300 c:设置一个名字叫sortedset1集合。
keys *:查询所有key。
type sortedset1:返回key的数据类型(zset)。
rename sortedset1 sortedset:重命名key。
zcard sortedset:查看key的元素个数。
zscore sortedset a:查看sortedset 的a的值。
zcount sortedset 0 220:查询分数在0-220之间的key的个数。
zrank sortedset a:查询a的索引下标。
zincrby sortedset 1000 a:把a的分数+1000,并返回结果。
zrang sortedset 0 100:查询分数在0-100之间的key。
zrang sortedset 0 100 withscores:查询排序在0-100之间的key,并且返回分值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值