4 通用指令

4.1 Redis的通用指令

4.1.1 Redis客户端连接

  • 客户端的连接

1:启动Redis服务

./src/redis-server redis.conf

2: 命令行客户端,默认连接本地6379

redis-cli
  • 关闭Redis服务的两种方式

1:客户端关闭Redis服务

redis-cli shutdown

2:强制关闭服务

netstat -tulpn | grep redis

kill -9 PID

4.1.2 Redis客户端命令

  • 测试服务端的响应

在进入Redis的客户端以后,可以输入:

ping

看服务端响应是否是pong来进行判断。

  • 退出客户端命令

在Redis的客户端使用:

exit

退出Redis的客户端服务。

  • 关闭Redis服务端服务命令

在Redis的客户端使用:

./src/redis-cli shutdown

来关闭服务端服务。

4.1.3 Redis通用指令

命令

示例

说明

select

select 0

select 1

选择0号数据库

选择1号数据库

keys

keys he*

keys he[h-l]*

keys ph?

根据Pattern表达式查询符合条件的Key

注意:不要在生产中使用

dbsize

dbsize

返回key的总数

exists

exists a

检查key=a是否存在

del

del a

删除key=a的数据

expire

expire hello 20

设置key=hello 20秒后过期

ttl

ttl hello

查看key=a的剩余有效时间

  • 存入数据

选择数据库后,存入一个键为a值为b的数据:

select 0
set a b

取得键为a的数据的值:

get a
  • 查找数据

存入三条数据:

set hello world
set php good
set java best

查找以“he”靠头的键的数据

keys he*

查找键的第三个字母是“h - l”(h、i、j、k、l)的字母的键

keys he[h-l]*

查找键的第三个字母是任意字符的,“?”是单个字母的匹配

keys ph?

注意:
不要在生产中使用“key”,因为“key”是一个阻塞的方式。比如数据库中存放300万条数据,这时如果使用keys的话,Redis会将300万
条数据遍历一遍,这样就会使得效率非常低的,而且也会阻塞到后边程序的执行,因为Redis是单线程的。

  • 设置key的有效时间和时长

设置一个键值数据

set helloworld java

设置有效时间1个小时

expire helloworld 3600

查看该键值数据的剩余有效时间

ttl helloworld

expire和ttl是成对出现的,一个用于设置,另一个用于检查。

  • 清空当前数据库中所有的数据

选择一个数据库:

select 0

执行清空该数据库中所有的数据

flushdb

通过

keys *

来检查数据库中的数据。

  • 删除所有数据库中所有的数据

不需要进行数据库的选择,直接执行:

flushall

则清空数据库中所有的数据,慎重使用。