redis-cli测试redis是否正常启动(客户端常用操作)

阅读数:140 评论数:0

跳转到新版页面

分类

应用软件

正文

一、redis-cli

redis-cli,这个命令将打开redis终端。输入ping命令,如果有pong响应,说明正常启动。

用法:redis-cli [OPTIONS] [cmd [arg [arg ...]]]
-h <主机ip>,默认是127.0.0.1
-p <端口>,默认是6379
-a <密码>,如果redis加锁,需要传递密码
-c 以集群方式连接
--help,显示帮助信息

二、客户端常用操作

1、全局命令

#查询所有的键,复杂度O(n)
keys *

#查询键总数,直接获取redis内置的键总数变量,复杂度O(1)
dbsize 

#存在返回1,不存在返回0
exists key

#返回结果为成功删除键的个数
del key [key...]

#在seconds秒后过期
expire key seconds

#在milliseconds毫秒后过期
pexpire key milliseconds

#在秒级时间戳后过期
expireat key timestamp

#在毫秒级时间戳后过期
expireat key milli-timestamp

#查看剩余过期时间(单位秒,-1表示没有设置过期时间,-2表示键不存在)
ttl key

#查看剩余过期时间(单位毫秒)
pttl key

#键的数据结构类型
type key

#键重命名
rename key newkey
#只有newkey不存在时才会被覆盖。
renamenx key newkey

#随机返回一个键
randomkey

#全量遍历键,例如 key h, keys [r,l]edis等
keys pattern
#渐进式遍历,每次复杂度O(1)
scan 

2、迁移键

(1)move key db(不建议在生产环境中使用)

(2)dump+restore

可以在不同的redis实例之间进行数据迁移的功能,整个迁移的过程分为两步:

第一步:在源redis上,dump命令会将键值序列化,格式采用的是RDB格式。

第二步:在目标redis上,restore命令将上面序列化的值进行复原,其中ttl参数代表过期时间,ttl=0代表没有过期时间。

(3)migrate

实际上是dump、restore、del三个命令进行组合,从而简化操作。

migrate host port key [key...] dest-db timeout [replace]

#例如
192.168.225.129:6379> migrate 192.168.225.128 6379 flower 0 1000 replace

表示将键flower迁移至目标192.168.225.128:6379的库0中,超时时间为1000毫秒,replace表示目标库如果存在键flower,则覆盖。

3、库操作

//选择某个库0,1...15
select 15
//清空整个redis服务器数据,所有的数据库全部清空            
flushall
//清除当前库,redis中默认有16个数据库,名称分别为0,1,2...15     
flushdb   

4、string类型

编号 命令 说明
1 set key value 此命令设置指定键的值
2 get key 获取指定键的值
3 getrange key start end 获取存储在键上的字符串的子字符串
4 getset key value 设置键的字符串值并返回其旧值
5 getbit key offset 返回在键处存储的字符串值中偏移处的位值
6 mget key1 [key2..] 获取所有给定键的值
7 setbit key offset value 存储在键上的字符串值中设置或清除偏移处的位
8 setex key seconds value 使用键和到期时间来设置值
9 setnx key value 设置键的值,仅当键不存在时
10 setrange key offset value 在指定偏移处开始的键处覆盖字符串的一部分
11 strlen key 获取存储在键中的值的长度
12 mset key value [key value …] 为多个键分别设置它们的值
13 msetnx key value [key value …] 为多个键分别设置它们的值,仅当键不存在时
14 psetex key milliseconds value 设置键的值和到期时间(以毫秒为单位)
15 incr key 将键的整数值增加1
16 incrby key increment 将键的整数值按给定的数值增加
17 incrbyfloat key increment 将键的浮点值按给定的数值增加
18 decr key 将键的整数值减1
19 decrby key decrement 按给定数值减少键的整数值
20 append key value 将指定值附加到键

5、hash类型

编号 命令 说明
1 hdel key field2 [field2] 删除一个或多个哈希字段
2 hexists key field 判断是否存在散列字段。
3 hget key field 获取存储在指定键的哈希字段的值
4 hgetall key 获取存储在指定键的哈希中的所有字段和值
5 hincrby key field increment 将哈希字段的整数值按给定数字增加
6 hincrbyfloat key field increment 将哈希字段的浮点值按给定数值增加
7 hkeys key 获取哈希中的所有字段
8 hlen key 获取散列中的字段数量
9 hmget key field1 [field2] 获取所有给定哈希字段的值
10 hmset key field1 value1 [field2 value2 ] 为多个哈希字段分别设置它们的值
11 hset key field value 设置散列字段的字符串值
12 hsetnx key field value 仅当字段不存在时,才设置散列字段的值
13 hvals key 获取哈希中的所有值

6、list类型

编号 命令 说明
1 blpop key1 [key2 ] timeout 删除并获取列表中的第一个元素,或阻塞,直到有一个元素可用
2 brpop key1 [key2 ] timeout 删除并获取列表中的最后一个元素,或阻塞,直到有一个元素可用
3 brpoplpush source destination timeout 从列表中弹出值,将其推送到另一个列表并返回它; 或阻塞,直到一个可用
4 lindex key index 通过其索引从列表获取元素
5 linsert key before/after pivot value 在列表中的另一个元素之前或之后插入元素
6 llen key 获取列表的长度
7 lpop key 删除并获取列表中的第一个元素
8 lpush key value1 [value2] 将一个或多个值添加到列表
9 lpushx key value 仅当列表存在时,才向列表添加值
10 lrange key start stop 从列表中获取一系列元素
11 lrem key count value 从列表中删除元素
12 lset key index value 通过索引在列表中设置元素的值
13 ltrim key start stop 修剪列表的指定范围
14 rpop key 删除并获取列表中的最后一个元素
15 rpoplpush source destination 删除列表中的最后一个元素,将其附加到另一个列表并返回
16 rpush key value1 [value2] 将一个或多个值附加到列表
17 rpushx key value 仅当列表存在时才将值附加到列表

7、set类型

编号 命令 说明
1 sadd key member1 [member2] 将一个或多个成员添加到集合
2 scard key 获取集合中的成员数
3 sdiff key1 [key2] 减去多个集合
4 sdiffstore destination key1 [key2] 减去多个集并将结果集存储在键中
5 sinter key1 [key2] 相交多个集合
6 sinterstore destination key1 [key2] 交叉多个集合并将结果集存储在键中
7 sismember key member 判断确定给定值是否是集合的成员
8 smove source destination member 将成员从一个集合移动到另一个集合
9 spop key 从集合中删除并返回随机成员
10 srandmember key [count] 从集合中获取一个或多个随机成员
11 srem key member1 [member2] 从集合中删除一个或多个成员
12 sunion key1 [key2] 添加多个集合
13 sunionstore destination key1 [key2] 添加多个集并将结果集存储在键中
14 sscan key cursor [MATCH pattern] [COUNT count] 递增地迭代集合中的元素

8、zset(sorted set)类型

编号 命令 说明
1 zadd key [NX|XX|CH] [INCR] score member [score member...]

XX仅仅更新存在的成员,不添加新成员。

NX只添加新成员。

CH返回值为发生变化的成员总数。

INCR等于ZINCRBY命令,对成员的分数进行递增操作。

2 zincrby key increment member 指定成员的分数加上增加increment
3 zrange key start stop [WITHSCORES] 查询指定区间内的元素,成员按score值从小到大排序,start和stop都是从0开始,0是第一个元素,1是第二个元素,-1表示最后一个元素,-2表示倒数第二个元素,WITHSCORES选项让score和value一同返回。
4 zrevrange key start stop [WITHSCORES] 查询指定区间内的成员,按score值从大到小排列。
5 zrem key member [member...] 删除有序集合key中的一个或多个成员,不存在的被成员被忽略,返回被成功删除的成员数量,不包括忽略的成员。
6 zcard key 获取有序集key的元素成员的个数
7 zrangebyscore key min max [WITHSCORES] [LIMIT offset count] 获取有序集key中,所有score值介于min和max之间(包括min和max)的成员,有序成员是按递增排序。min和max使用符号(表示不包括,可以使用-inf和+inf,limit用来限制返回结果的数量和区间。
8 zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count] 与上面命令的不同,是按递减排序。
9 zcount key min max 返回有序集key中,score值在min和max之间(默认包括min和max)的成员的数量。

 

最后欢迎大家访问我的个人网站:1024s.top

 




相关推荐

protected-mode是为了禁止公网访问redis,加强redis安全的。它启用的条件,有两个: (1)没有bind IP (2)没有设置访问密码。 <

一、单机模式 1、优点 (1)部署简单 (2)成本低 (3)高性能,因为不需要同步数据 2、缺点 (1)可靠性差 二、主从复制模式 主从模式配置很简单,只需要在从节点配置主节点的ip和端口号即可。

前置知识 1、requirepass验证客户端,对登录权限做限制,redis每个节点的requirepass可以是独立、不同的。 <p

在集群模式下,redis在接收到键任何命令时会先计算该键所在的槽,如果改键所在的槽位于当前节点,则直接执行命令,如果改键位于其它节点,则不执行该命令,返回重定向信息。比如hello这

1、sentinel不会存储数据。 2、客户端不会直接从redis中获取信息,而是从sentinel获取信息。 3、sentinel的默认端口是26379 <

redis-cli keys "s*" | xargs redis-cli del 另外还可以用-n指定操作的数据库编号 redis-cli -n 2 keys "s*" | xargs redis-

psubscribe pattern [pattern] 与subscribe一样,只是可以使用*匹配符匹配多个channel

ZSCORE key member 如果member元素不是有序集key的成员,或key不存在,返回nil

1、官方文档 The timeout will only be cleared by commands that delete or overwrite the contents of the key

一、作用 如果为空就设置值,并返回1。 如果存在(不为空)不进行操作,并返回0。 二、setnx setnx是redis命令中的方法。 redis> SETNX mykey "Hello" (inte