redis命令行命令

配置文件设置密码认证

修改redis.conf
去掉#requirepass foobared前面的#,foobared就是密码,可以进行修改

redis命令设置密码认证
config set requirepass my_redis

连接相关命令

quit: 断开连接
auth:简单密码认证

127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth my_redis
OK
127.0.0.1:6379> keys *
1) "key"

持久化

save:将数据同步保存到磁盘


bgsave:将数据异步保存到磁盘

lastsave:返回上次成功将数据保存到磁盘的Unix时戳

shundown:将数据同步保存到磁盘,然后关闭服务

远程服务控制
info:提供服务器的信息和统计
monitor:实时转储收到的请求
slaveof:改变复制策略设置,配置主节点
config:在运行时配置Redis服务器


对value操作的命令
exists(key):确认一个key是否存在

127.0.0.1:6379> exists key
(integer) 1
127.0.0.1:6379> exists key1
(integer) 0

del(key):删除一个key

127.0.0.1:6379> del key
(error) READONLY You can't write against a read only slave.


slave只能查询不能修改,所以需要到master上操作

127.0.0.1:6379> del key
(integer) 1
127.0.0.1:6379> exists key
(integer) 0
127.0.0.1:6379>

type(key):返回值的类型

127.0.0.1:6379> set key 1123
OK
127.0.0.1:6379> type key
string

keys(pattern):返回满足给定pattern的所有key

127.0.0.1:6379> keys *
1) "key"


randomkey:随机返回key空间的一个

127.0.0.1:6379> set key1 22
OK
127.0.0.1:6379> randomkey
"key1"
127.0.0.1:6379> randomkey
"key"
127.0.0.1:6379>


dbsize:返回当前数据库中key的数目

127.0.0.1:6379> dbsize
(integer) 2

expire:设定一个key的活动时间(单位秒(s))

127.0.0.1:6379> expire key 2
(integer) 1
127.0.0.1:6379> get key
(nil)
127.0.0.1:6379>

ttl:获得一个key的活动时间

127.0.0.1:6379> set key4 33
OK
127.0.0.1:6379> ttl key4
(integer) -1
127.0.0.1:6379> 
127.0.0.1:6379> expire key4 20
(integer) 1
127.0.0.1:6379> ttl key4
(integer) 14
127.0.0.1:6379>

select index 按索引查询

127.0.0.1:6379[2]> flushdb
OK
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> set k1 v1
OK
127.0.0.1:6379[1]> keys *
1) "k1"
127.0.0.1:6379[1]> seelct 2
(error) ERR unknown command 'seelct'
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]> keys *
(empty list or set)
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> keys *
1) "k1"

move(key, dbindex):移动当前数据库中的key到dbindex数据库

127.0.0.1:6379[2]> flushdb
OK
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> set k1 v1
OK
127.0.0.1:6379[1]> keys *
1) "k1"
127.0.0.1:6379[1]> seelct 2
(error) ERR unknown command 'seelct'
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]> keys *
(empty list or set)
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> keys *
1) "k1"
127.0.0.1:6379[1]> move k1 2
(integer) 1
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]> keys *
1) "k1"
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)

flushdb:删除当前选择数据库中的所有key

127.0.0.1:6379[1]> flushdb
OK
127.0.0.1:6379[1]> keys *
(empty list or set)

flushall:删除所有数据库中的所有key


对String操作的命令


set(key, value):给数据库中名称为key的string赋予值value

127.0.0.1:6379[1]> set k1 v1
OK
127.0.0.1:6379[1]> keys *
1) "k1"

  

get(key):返回数据库中名称为key的string的value

127.0.0.1:6379[1]> get k1
"v1"

  

getset(key, value):将给定 key 的值设为 value ,并返回 key 的旧值(old value)

127.0.0.1:6379[1]> set k3 v3
OK
127.0.0.1:6379[1]> getset k3 v4
"v3"
127.0.0.1:6379[1]>

  

mget(key1, key2,…, key N):返回库中多个string的value

127.0.0.1:6379[1]> mget k1 k2 k3 k4 k5
1) "v1"
2) "v2"
3) "v4"
4) (nil)
5) (nil)

  

setnx(key, value):key不存在时,设置key的值

127.0.0.1:6379[1]> setnx k1 v9
(integer) 0
127.0.0.1:6379[1]> get k1
"v1"
127.0.0.1:6379[1]> setnx k5 v5
(integer) 1
127.0.0.1:6379[1]> get k5
"v5"
127.0.0.1:6379[1]>

  

setex(key, time, value):将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。

127.0.0.1:6379[1]> setex k6 10 v6
OK
127.0.0.1:6379[1]> get k6
"v6"
127.0.0.1:6379[1]> get k6
(nil)
127.0.0.1:6379[1]>

  

mset(key N, value N):批量设置多个string的值

127.0.0.1:6379[1]> mset kkk1 vvv1 kkk2 vvv2 kkk3 vvv3
OK
127.0.0.1:6379[1]> mget kkk1 kkk2 kkk3
1) "vvv1"
2) "vvv2"
3) "vvv3"

  

msetnx(key N, value N):如果所有名称为key i的string都不存在,类似setnx

incr(key):名称为key的string增1操作

127.0.0.1:6379[1]> set i 1
OK
127.0.0.1:6379[1]> incr i
(integer) 2
127.0.0.1:6379[1]> get i
"2"
127.0.0.1:6379[1]>

  

incrby(key, integer):名称为key的string增加integer

127.0.0.1:6379[1]> incrby i 5
(integer) 7
127.0.0.1:6379[1]> get i
"7"
127.0.0.1:6379[1]>

decr(key):名称为key的string减1操作

127.0.0.1:6379[1]> decr i
(integer) 6
127.0.0.1:6379[1]> get i
"6"

decrby(key, integer):名称为key的string减少integer

127.0.0.1:6379[1]> decrby i 4
(integer) 2
127.0.0.1:6379[1]> get i
"2"

append(key, value):名称为key的string的值附加value

127.0.0.1:6379[1]> set temp temp
OK
127.0.0.1:6379[1]> append temp append
(integer) 10
127.0.0.1:6379[1]> get temp
"tempappend"
127.0.0.1:6379[1]>

  

substr(key, start, end):返回名称为key的string的value的子串

127.0.0.1:6379[1]> substr temp 1 3
"emp"
127.0.0.1:6379[1]>

  


对List的操作

rpush(key, value):在名称为key的list尾添加一个值为value的元素
lpush(key, value):在名称为key的list头添加一个值为value的 元素
llen(key):返回名称为key的list的长度
lrange(key, start, end):返回名称为key的list中start至end之间的元素
ltrim(key, start, end):截取名称为key的list
lindex(key, index):返回名称为key的list中index位置的元素
lset(key, index, value):给名称为key的list中index位置的元素赋值
lrem(key, count, value):删除count个key的list中值为value的元素
lpop(key):返回并删除名称为key的list中的首元素
rpop(key):返回并删除名称为key的list中的尾元素
blpop(key1, key2,… key N, timeout):lpop命令的block版本。
brpop(key1, key2,… key N, timeout):rpop的block版本。
rpoplpush(srckey, dstkey):返回并删除名称为srckey的list的尾元素,并将该元素添加到名称为dstkey的list的头部

127.0.0.1:6379[1]> rpush list1 v1
(integer) 1
127.0.0.1:6379[1]> lpush list1 v2
(integer) 2
127.0.0.1:6379[1]> llen list1
(integer) 2
127.0.0.1:6379[1]> lrange list 0 1
(empty list or set)
127.0.0.1:6379[1]> lrange list 1 2
(empty list or set)
127.0.0.1:6379[1]> lrange list1 0 1
1) "v2"
2) "v1"
127.0.0.1:6379[1]> ltrim list1 0 1
OK
127.0.0.1:6379[1]> lindex 0 0
(nil)
127.0.0.1:6379[1]> lindex list1 0
"v2"
127.0.0.1:6379[1]> lset list1 0 value1
OK
127.0.0.1:6379[1]> lrem list1 1 value1
(integer) 1
127.0.0.1:6379[1]> rpush list1 v2
(integer) 2
127.0.0.1:6379[1]> lpush list1 v3
(integer) 3
127.0.0.1:6379[1]> lpop list1
"v3"
127.0.0.1:6379[1]> rpop list1
"v2"
127.0.0.1:6379[1]> brpop list1 3
1) "list1"
2) "v1"
127.0.0.1:6379[1]> blpop list1 3
(nil)
(3.04s)
127.0.0.1:6379[1]> rpush list2 v2
(integer) 1
127.0.0.1:6379[1]> lpush list2 v3
(integer) 2
127.0.0.1:6379[1]> rpoplpush list2 list3
"v2"

  


set操作命令

sadd(key, member):向名称为key的set中添加元素member
srem(key, member) :删除名称为key的set中的元素member
spop(key) :随机返回并删除名称为key的set中一个元素
smove(srckey, dstkey, member) :移到集合元素
scard(key) :返回名称为key的set的成员个数
sismember(key, member) :member是否是名称为key的set的元素
sinter(key1, key2,…key N) :求交集
sinterstore(dstkey, (keys)) :求交集并将交集保存到dstkey的集合
sunion(key1, (keys)) :求并集
sunionstore(dstkey, (keys)) :求并集并将并集保存到dstkey的集合
sdiff(key1, (keys)) :求差集
sdiffstore(dstkey, (keys)) :求差集并将差集保存到dstkey的集合
smembers(key) :返回名称为key的set的所有元素
srandmember(key) :随机返回名称为key的set的一个元素

127.0.0.1:6379[1]> sadd set1 v1
(integer) 1
127.0.0.1:6379[1]> srem set1 v1
(integer) 1
127.0.0.1:6379[1]> sadd set1 v1
(integer) 1
127.0.0.1:6379[1]> sadd set1 v2
(integer) 1
127.0.0.1:6379[1]> sadd set1 v3
(integer) 1
127.0.0.1:6379[1]> sadd set1 v4
(integer) 1
127.0.0.1:6379[1]> spop set1
"v3"
127.0.0.1:6379[1]> sadd set2 v2
(integer) 1
127.0.0.1:6379[1]> smove set1 set2 v3
(integer) 0
127.0.0.1:6379[1]> scard set1
(integer) 3
127.0.0.1:6379[1]> sismember set1 v1
(integer) 1
127.0.0.1:6379[1]> sismember set1 v9
(integer) 0
127.0.0.1:6379[1]> sinter set1 set2
1) "v2"
127.0.0.1:6379[1]> sinterstore set3 set1 set2
(integer) 1
127.0.0.1:6379[1]> sdiff set1 set2
1) "v4"
2) "v1"
127.0.0.1:6379[1]> sdiffstore set4 set1 set2
(integer) 2
127.0.0.1:6379[1]> smembers set1
1) "v2"
2) "v4"
3) "v1"
127.0.0.1:6379[1]> srandmeber set1
(error) ERR unknown command 'srandmeber'
127.0.0.1:6379[1]> srandmember set1
"v4"

  

对Hash操作的命令

hset(key, field, value):向名称为key的hash中添加元素field
hget(key, field):返回名称为key的hash中field对应的value
hmget(key, (fields)):返回名称为key的hash中field i对应的value
hmset(key, (fields)):向名称为key的hash中添加元素field
hincrby(key, field, integer):将名称为key的hash中field的value增加integer
hexists(key, field):名称为key的hash中是否存在键为field的域
hdel(key, field):删除名称为key的hash中键为field的域
hlen(key):返回名称为key的hash中元素个数
hkeys(key):返回名称为key的hash中所有键
hvals(key):返回名称为key的hash中所有键对应的value
hgetall(key):返回名称为key的hash中所有的键(field)及其对应的value

127.0.0.1:6379[1]> hset hash1 k1 v1
(integer) 1
127.0.0.1:6379[1]> hget hash1 k1
"v1"
127.0.0.1:6379[1]> hset hash1 k2 v2
(integer) 1
127.0.0.1:6379[1]> hmget hash1 k1 k2
1) "v1"
2) "v2"
127.0.0.1:6379[1]> hmset hash1 k3 v3 k4 v4
OK
127.0.0.1:6379[1]> hget hash1 k3
"v3"
127.0.0.1:6379[1]> hget hash1 k4
"v4"
127.0.0.1:6379[1]> hset hash1 i 1
(integer) 1
127.0.0.1:6379[1]> hincrby hash1 i 5
(integer) 6
127.0.0.1:6379[1]> hexists hash1 k6
(integer) 0
127.0.0.1:6379[1]> hexists hash1 k1
(integer) 1
127.0.0.1:6379[1]> hdel hash1 k1
(integer) 1
127.0.0.1:6379[1]> hlen hash1
(integer) 4
127.0.0.1:6379[1]> hvals hash1
1) "v2"
2) "v3"
3) "v4"
4) "6"
127.0.0.1:6379[1]> hgetall hash1
1) "k2"
2) "v2"
3) "k3"
4) "v3"
5) "k4"
6) "v4"
7) "i"
8) "6"
127.0.0.1:6379[1]>

java操作Redis使用jedis jar包

 

原文地址:https://www.cnblogs.com/heml/p/6657035.html