move是MySQL命令_系统学习redis之八——redis常用命令

redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以在linux终端使用,包括以下两种:

1、键值相关命令

2、服务器相关命令

redis命令介绍

一、键值相关命令

key:返回满足给定匹配条件的所有key。用表达式*代表取出所有的key

exists:确认一个key是否存在,存在即返回1,不存在就返回0

del:删除一个key

expire:设置一个key的过期时间

persist:移除给定的key的过期时间

randomkey:随机返回数据库里面的一个key

rename:重命名key

type:返回指定key的数据类型

move:将当前数据库中的key转移到其他数据库中

二、服务器相关命令

ping:测试连接是否存活

echo:在命令行打印一些内容

select:选择进入某个数据库。redis数据库编号从0~15,我们可以选择任意一个数据库来进行数据库的存取。超出0~15的这个范围就会报错

quit:退出redis数据库连接,也可以用exit(类似退出MySQL数据库一样)

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

info:获取服务器的信息和各种统计值

config get:返回制定的配置及其参数值

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

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

redis命令操作

一、键值相关命令

1、key:返回满足给定匹配条件的所有key。用表达式*代表取出所有的key

例如:返回redis里面指定的key

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> KEYS * #取出所有的key,下面的key就是前面实验中创建的所有key

1) "name"

2) "myset5"

3) "myset2"

4) "user:001"

5) "list6"

6) "list1"

7) "myset1"

8) "list3"

9) "zset1"

10) "user:002"

11) "sset2"

12) "email"

13) "myset3"

14) "mail"

15) "sset1"

16) "myset4"

17) "list2"

18) "myset6"

19) "myset7"

20) "list5"

127.0.0.1:6379> KEYS my* #取出以my开头的所有key

1) "myset5"

2) "myset2"

3) "myset1"

4) "myset3"

5) "myset4"

6) "myset6"

7) "myset7"

127.0.0.1:6379>

备注,同《系统学习redis之三——redis数据类型之string类型及操作》一样,后面的例子也都在同一台机器一次性操作完毕的,因为后面的代码如果不加上“ [root@test101 redis-4.0.1]# src/redis-cli ”这一句。代码高亮也会格式有问题,所以后面所有的例子中都加上了“[root@test101 redis-4.0.1]# src/redis-cli ”,主要为了格式问题。

2、exists:确认一个key是否存在,存在即返回1,不存在就返回0

例如:确认当前数据库中myset1和myset0是否存在

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> KEYS my* #查看redis里面所有以my开头的key,有下面这些

1) "myset5"

2) "myset2"

3) "myset1"

4) "myset3"

5) "myset4"

6) "myset6"

7) "myset7"

127.0.0.1:6379> EXISTS myset1 #确认myset1是否存在,从上面看出,是有myset1的,返回1,表示存在

(integer) 1

127.0.0.1:6379> EXISTS myset10 #确认myset10是否存在,从上面看出,是没有myset10的,返回0,表示不存在

(integer) 0

127.0.0.1:6379>

3、del:删除一个key

例如:删除上面例子中的myset1

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> EXISTS myset1

(integer) 1

127.0.0.1:6379> DEL myset1

(integer) 1

127.0.0.1:6379> EXISTS myset1 #myset1已经不存在了,删除成功

(integer) 0

127.0.0.1:6379>

4、expire:设置一个key的过期时间

例如:给已经存在名为“age”的key设置过期时间

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> SET age 18 #设置一个新的key名为age,值为18

OK

127.0.0.1:6379> GET age #查看age

"18"

127.0.0.1:6379> EXPIRE age 10 #给age设置过期时间为10秒

(integer) 1

127.0.0.1:6379> TTL age #ttl查看age剩下的过期时间,下面的7就表示还有1秒钟过期

(integer) 7

127.0.0.1:6379> TTL age

(integer) 2

127.0.0.1:6379> TTL age #当过期时间变成了负值,就表示这个key已经过期了

(integer) -2

127.0.0.1:6379> GET age #再get查看,就已经为空了,注意:不是值被清空,而是整个key都给删除了

(nil)

127.0.0.1:6379>

5、persist:移除给定的key的过期时间

例如:给上面例子里面数据库1中的age设置20秒过期时间,然后再取消设置

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379[1]> GET age

"16"

127.0.0.1:6379[1]> EXPIRE age 20 #设置age的过期前时间为20秒

(integer) 1

127.0.0.1:6379[1]> TTL age #查看剩余过期时间

(integer) 17

127.0.0.1:6379[1]> TTL age

(integer) 15

127.0.0.1:6379[1]> PERSIST age #取消设置过期时间

(integer) 1

127.0.0.1:6379[1]> TTL age #再ttl查看剩余过期时间也返回-1,这里的-1不表示已经过期,表示已经取消过期时间

(integer) -1

127.0.0.1:6379[1]> GET age #过几分钟再查看,age依然存在,最开始设置的20秒过期时间已经被成功取消

"16"

127.0.0.1:6379[1]>

6、randomkey:随机返回数据库里面的一个key

例如:随机返回当前数据库里面的key

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> RANDOMKEY

"list6"

127.0.0.1:6379> RANDOMKEY

"list2"

127.0.0.1:6379> RANDOMKEY

"sset2"

127.0.0.1:6379> RANDOMKEY

"myset7"

127.0.0.1:6379> RANDOMKEY

"email"

127.0.0.1:6379>

7、rename:重命名key

例如:将名字为“mail”的key重命名为“key_new”

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> KEYS mai*

1) "mail"

127.0.0.1:6379> RENAME mail mail_new

OK

127.0.0.1:6379> KEYS mai*

1) "mail_new"

127.0.0.1:6379>

8、type:返回指定key的数据类型

例如:返回当前数据库中list5和name、sset1这几个key的数据类型

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> TYPE list5

list

127.0.0.1:6379> TYPE name

string

127.0.0.1:6379> TYPE sset1 #返回的list、string和zset分别代表这几个key的数据类型

zset

127.0.0.1:6379>

9、move:将当前数据库中的key转移到其他数据库中

例如:在数据库0中创建名为age的key并设置值为16,然后将age这个key移动到数据库1中

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> SELECT 0 #先进入数据库0,确认age这个key不存在

OK

127.0.0.1:6379> EXISTS age

(integer) 0

127.0.0.1:6379> SELECT 1 #再先进入数据库1,确认age这个key不存在

OK

127.0.0.1:6379[1]> EXISTS age

(integer) 0

127.0.0.1:6379[1]> SELECT 0 #返回数据库0,创建age这个key,并设置值为16

OK

127.0.0.1:6379> SET age 16

OK

127.0.0.1:6379> EXISTS age #现在age还存在与数据库0中

(integer) 1

127.0.0.1:6379> GET age

"16"

127.0.0.1:6379> MOVE age 1 #将age这个key移动到数据库1中

(integer) 1

127.0.0.1:6379> EXISTS age #然后再查看,数据库0里面就没有age这个key了

(integer) 0

127.0.0.1:6379> SELECT 1 #进入数据库1中查看,age这个key已经存在,并且值为16

OK

127.0.0.1:6379[1]> EXISTS age

(integer) 1

127.0.0.1:6379[1]> GET age

"16"

127.0.0.1:6379[1]>

二、服务器相关命令

1、ping:测试连接是否存活

例如:测试当前redis数据库是否存活

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> ping #返回PONG,表示连接成功,是OK的

PONG

127.0.0.1:6379> ping #在执行这条命令之前,重开一个窗口,杀掉redis进程,再回来执行这个ping

Could not connect to Redis at 127.0.0.1:6379: Connection refused #因为redis进程已经在另一个窗口被kill掉,所以连接失败

not connected> ping #然后在另一个窗口再重新启动redis,再回来ping,返回PONG,连接OK

PONG

127.0.0.1:6379>

2、echo:在命令行打印一些内容

例如:在当前命令行输出某些内容

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> ECHO crystal

"crystal"

127.0.0.1:6379> ECHO 1990

"1990"

127.0.0.1:6379>

3、select:选择进入某个数据库。redis数据库编号从0~15,我们可以选择任意一个数据库来进行数据库的存取。超出0~15的这个范围就会报错

例如:选择进入指定的数据库

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> SELECT 1

OK

127.0.0.1:6379[1]> SELECT 10

OK

127.0.0.1:6379[10]> SELECT 18 #18数据库已经超出范围,所以报错

(error) ERR DB index is out of range

127.0.0.1:6379[10]>

4、quit:退出redis数据库连接,也可以用exit(类似退出MySQL数据库一样)

例如:退出当前redis数据库,回到linux系统命令行

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> quit

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379>

127.0.0.1:6379> exit

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379>

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

例如:返回放钱数据库的key的数量

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> DBSIZE #返回当前数据库的key的数量,下面返回的18就表示有18个key

(integer) 18

127.0.0.1:6379[1]> SELECT 10 #10数据库没有创建过key,返回的数量就是0

OK

127.0.0.1:6379[10]> DBSIZE

(integer) 0

127.0.0.1:6379[10]>

6、info:获取服务器的信息和各种统计值

例如:查看当前的数据库服务

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> info

# Server

redis_version:4.0.1

redis_git_sha1:00000000

redis_git_dirty:0

...... #省略若干

127.0.0.1:6379>

7、config get:返回制定的配置及其参数值

例如:返回执行的配置及其参数值

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> CONFIG GET * #如果不指定要返回的内容,用*代替,就会返回所有的参数值

1) "dbfilename"

2) "dump.rdb"

3) "requirepass"

4) ""

5) "masterauth"

6) ""

...... #省略若干

127.0.0.1:6379>

127.0.0.1:6379> CONFIG GET dbfilename #返回dbfilename及其参数值

1) "dbfilename"

2) "dump.rdb"

127.0.0.1:6379>

8、flushdb:删除当前数据库中的所有key

例如:删除数据库1中的所有key

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379> SELECT 1 #先进入数据库1

OK

127.0.0.1:6379[1]> DBSIZE #查看数据库1的key总数

(integer) 3

127.0.0.1:6379[1]> FLUSHDB #删除当前库的所有key

OK

127.0.0.1:6379[1]> DBSIZE #再查看,数据库1已经没有key了

(integer) 0

127.0.0.1:6379[1]>

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

例如:清除所有数据库中的所有key

[root@test101 redis-4.0.1]# src/redis-cli

127.0.0.1:6379[1]> SELECT 0 #首先切换到数据库0,里面有18个key

OK

127.0.0.1:6379> DBSIZE

(integer) 18

127.0.0.1:6379> SELECT 1 #再切换到数据库1,里面有3个key

OK

127.0.0.1:6379[1]> DBSIZE

(integer) 3

127.0.0.1:6379[1]> FLUSHALL #使用flushall清空所有库

OK

127.0.0.1:6379[1]> DBSIZE #数据库1已经没有了key

(integer) 0

127.0.0.1:6379[1]> SELECT 0 #再回到数据库0,也已经没有了key,所有key都被删除完了

OK

127.0.0.1:6379> DBSIZE

(integer) 0

127.0.0.1:6379>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值