您的位置:首页 > 数据库 > Redis

Redis常用命令

2012-01-18 14:20 507 查看
键值相关命令

  1、keys

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

  redis 127.0.0.1:6379> keys *

  1) "myzset2"

  2) "myzset3"

  3) "mylist"

  4) "myset2"

  5) "myset3"

  6) "myset4"

  7) "k_zs_1"

  8) "myset5"

  9) "myset6"

  10) "myset7"

  11) "myhash"

  12) "myzset"

  13) "age"

  14) "myset"

  15) "mylist5"

  16) "mylist6"

  17) "mylist7"

  18) "mylist8"

  用表达式*,代表取出所有的key:

  redis 127.0.0.1:6379> keys
mylist*

  1) "mylist"

  2) "mylist5"

  3) "mylist6"

  4) "mylist7"

  5) "mylist8"

  redis 127.0.0.1:6379>

  用表达式mylist*,代表取出所有以mylist开头的key。

  2、exists

  确认一个key是否存在:

  redis 127.0.0.1:6379> exists
HongWan

  (integer) 0

  redis 127.0.0.1:6379> exists
age

  (integer) 1

  redis 127.0.0.1:6379>

  从结果来数据库中不存在HongWan这个key,但是age这个key是存在的。

  3、del

  删除一个key:

  redis 127.0.0.1:6379> del
age

  (integer) 1

  redis 127.0.0.1:6379> exists
age

  (integer) 0

  redis 127.0.0.1:6379>

  从结果来数据库中不存在HongWan这个key,但是age这个key是存在的。

  4、expire

  设置一个key的过期时间(单位:秒):

  redis 127.0.0.1:6379> expire
addr 10

  (integer) 1

  redis 127.0.0.1:6379> ttl
addr

  (integer) 8

  redis 127.0.0.1:6379> ttl
addr

  (integer) 1

  redis 127.0.0.1:6379> ttl
addr

  (integer) -1

  redis 127.0.0.1:6379>

  在本例中,我们设置addr这个key的过期时间是10秒,然后我们不断的用ttl来获取这个key的有效时长,直至为-1说明此值已过期。

  5、move

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

  redis 127.0.0.1:6379> select 0

  OK

  redis 127.0.0.1:6379> set age 30

  OK

  redis 127.0.0.1:6379> get age

  "30"

  redis 127.0.0.1:6379> move
age 1

  (integer) 1

  redis 127.0.0.1:6379> get age

  (nil)

  redis 127.0.0.1:6379> select 1

  OK

  redis 127.0.0.1:6379[1]> get age

  "30"

  redis 127.0.0.1:6379[1]>

  在本例中,我先显式的选择了数据库0,然后在这个库中设置一个key,接下来我们将这个key从数据库0移到数据库1,之后我们确认在数据库0中无此key了, 但在数据库1中存在这个key,说明我们转移成功了

  6、persist

  移除给定key的过期时间:

  redis 127.0.0.1:6379[1]> expire
age 300

  (integer) 1

  redis 127.0.0.1:6379[1]> ttl
age

  (integer) 294

  redis 127.0.0.1:6379[1]> persist
age

  (integer) 1

  redis 127.0.0.1:6379[1]> ttl
age

  (integer) -1

  redis 127.0.0.1:6379[1]>

  在这个例子中,我们手动的将未到过期时间的key,成功设置为过期。

  7、randomkey

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

  redis 127.0.0.1:6379> randomkey

  "mylist7"

  redis 127.0.0.1:6379> randomkey

  "mylist5"

  redis 127.0.0.1:6379>

  通过结果可以看到取key的规则是随机的。

  8、rename

  重命名key:

  redis 127.0.0.1:6379[1]> keys *

  1) "age"

  redis 127.0.0.1:6379[1]> rename
age age_new

  OK

  redis 127.0.0.1:6379[1]> keys *

  1) "age_new"

  redis 127.0.0.1:6379[1]>

  age成功的被我们改名为age_new了。

  9、type

  返回值的类型:

  redis 127.0.0.1:6379> type
addr

  string

  redis 127.0.0.1:6379> type
myzset2

  zset

  redis 127.0.0.1:6379> type
mylist

  list

  redis 127.0.0.1:6379>

  这个方法可以非常简单的判断出值的类型。

服务器相关命令

1、ping

  测试连接是否存活:

  redis 127.0.0.1:6379> ping

  PONG

  //执行下面命令之前,我们停止redis服务器

  redis 127.0.0.1:6379> ping

  Could not connect to Redis at 127.0.0.1:6379:
Connection refused

  //执行下面命令之前,我们启动redis服务器

  not connected> ping

  PONG

  redis 127.0.0.1:6379>

  第一个ping时,说明此连接正常;

  第二个ping之前,我们将redis服务器停止,那么ping是失败的;

  第三个ping之前,我们将redis服务器启动,那么ping是成功的。

  2、echo

  在命令行打印一些内容:

  redis 127.0.0.1:6379> echo
HongWan

  "HongWan"

  redis 127.0.0.1:6379>

  3、select

  选择数据库。Redis数据库编号从0~15,我们可以选择任意一个数据库来进行数据的存取。

  redis 127.0.0.1:6379> select 1

  OK

  redis 127.0.0.1:6379[1]> select 16

  (error) ERR invalid DB index

  redis 127.0.0.1:6379[16]>

  当选择16时,报错,说明没有编号为16的这个数据库。

  4、quit

  退出连接。

  redis 127.0.0.1:6379> quit

  [root@localhost redis-2.2.12]#

  5、dbsize

  返回当前数据库中key的数目。

  redis 127.0.0.1:6379> dbsize

  (integer) 18

  redis 127.0.0.1:6379>

  结果说明此库中有18个key。

  6、info

  获取服务器的信息和统计。

  redis 127.0.0.1:6379> info

  redis_version:2.2.12

  redis_git_sha1:00000000

  redis_git_dirty:0

  arch_bits:32

  multiplexing_api:epoll

  process_id:28480

  uptime_in_seconds:2515

  uptime_in_days:0

  .

  .

  .

  redis 127.0.0.1:6379>

  此结果用于说明服务器的基础信息,包括版本、启动时间等。

  7、monitor

  实时转储收到的请求。

  redis 127.0.0.1:6379> config get dir

  1) "dir"

  2) "/root/4setup/redis-2.2.12"

  redis 127.0.0.1:6379>

  从结果可以看出,此服务器目前接受了命令"keys *"和"get addr"。

  8、config get

  获取服务器配置信息。

  redis 127.0.0.1:6379> config get dir

  1) "dir"

  2) "/root/4setup/redis-2.2.12"

  redis 127.0.0.1:6379>

  本例中我们获取了dir这个参数配置的值,如果想获取全部参数据的配置值也很简单,只需执行”config get *”即可将全部的值都显示出来。

  9、flushdb

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

  redis 127.0.0.1:6379> dbsize

  (integer) 18

  redis 127.0.0.1:6379> flushdb

  OK

  redis 127.0.0.1:6379> dbsize

  (integer) 0

  redis 127.0.0.1:6379>

  在本例中我们将0号数据库中的key都清除了。

  10、flushall

  删除所有数据库中的所有key。

  redis 127.0.0.1:6379[1]> dbsize

  (integer) 1

  redis 127.0.0.1:6379[1]> select 0

  OK

  redis 127.0.0.1:6379> flushall

  OK

  redis 127.0.0.1:6379> select 1

  OK

  redis 127.0.0.1:6379[1]> dbsize

  (integer) 0

  redis 127.0.0.1:6379[1]>

  在本例中我们先查看了一个1号数据库中有一个key,然后我切换到0号库执行flushall命令,结果1号库中的key也被清除了,说是此命令工作正常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: