05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令(一)

2015-02-25 21:42:14 · 作者: · 浏览: 109
??

Redis常用命令

Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用。

键值相关命令:

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

\

用表达式*表示取出所有的key

127.0.0.1:6379> keys *

1) "age"

2) "name"

3) "age2"

127.0.0.1:6379> keys a*

1) "age"

2) "age2"

127.0.0.1:6379>

Exists:确认一个key是否存在

\

vcmRlcj0="1" cellspacing="0" cellpadding="0">

del:删除一个key.

\

127.0.0.1:6379> set toto1 toto

OK

127.0.0.1:6379> keys *

1) "name"

2) "age2"

3) "age"

4) "toto1"

127.0.0.1:6379> del toto1 //删除toto1这个键。

(integer) 1

127.0.0.1:6379> del toto1 //再次删除的时候删除不成功

(integer) 0

127.0.0.1:6379> exists toto1 //

(integer) 0

127.0.0.1:6379> keys *

1) "name"

2) "age2"

3) "age"

127.0.0.1:6379>

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

\

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

expiree addr 10表示:对addr设置过期时间为10秒。

ttl查询剩余的过期时间,当返回-1的时候表示已经过期了。

127.0.0.1:6379> set age 20 //设置一个key为age的值。

OK

127.0.0.1:6379> get age

"20"

127.0.0.1:6379> expire age 10

(integer) 1

127.0.0.1:6379> ttl age

(integer) 8

127.0.0.1:6379> ttl age

(integer) 5

127.0.0.1:6379> ttl age

(integer) 3

127.0.0.1:6379> ttl age

(integer) -2

127.0.0.1:6379> ttl age

(integer) -2

127.0.0.1:6379> ttl age

(integer) -2

127.0.0.1:6379> exists age

(integer) 0

127.0.0.1:6379> keys * //查看age是否还存在

1) "name"

2) "age2"

127.0.0.1:6379>

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

选择数据库,要用到select,select 0表示选择到当前数据库。Select 1表示第二个数据库,一共是从0到15个数据库,总共是16个数据库。(注意,进入redis的时候默认进入的是0数据库)

127.0.0.1:6379> select 0

OK

127.0.0.1:6379> set age 30

OK

127.0.0.1:6379> get age

"30"

127.0.0.1:6379> move age 1

(integer) 1

127.0.0.1:6379> get age

(nil)

127.0.0.1:6379> select 1

OK

127.0.0.1:6379[1]> get age

"30"

127.0.0.1:6379[1]>

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

\

127.0.0.1:6379[1]> select 1

OK

127.0.0.1:6379[1]> keys *

1) "age"

127.0.0.1:6379[1]> expire age 300 //设置age的过期时间为300

(integer) 1

127.0.0.1:6379[1]> ttl age

(integer) 297

127.0.0.1:6379[1]> ttl age

(integer) 293

127.0.0.1:6379[1]> persist age //取消age的过期

(integer) 1

127.0.0.1:6379[1]> ttl age

(integer) -1

127.0.0.1:6379[1]> exists age

(integer) 1

127.0.0.1:6379[1]> keys *

1) "age"

127.0.0.1:6379[1]>

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

\

127.0.0.1:6379[1]> keys *

1) "gender"

2) "name"

3) "address"

4) "age"

127.0.0.1:6379[1]> randomkey //随机获得一个key

"gender"

127.0.0.1:6379[1]> randomkey

"address"

127.0.0.1:6379[1]> randomkey

"gender"

127.0.0.1:6379[1]>

rename:重命名key

127.0.0.1:6379[1]> keys *

1) "gender"

2) "name"

3) "address"

4) "age"

127.0.0.1:6379[1]> rename age nianling 将age这个key重新命名为nianling

OK

127.0.0.1:6379[1]> keys *

1) "gender"

2) "name"

3) "address"

4) "nianling"

127.0.0.1:6379[1]>

type:返回键的数据类型

\

127.0.0.1:6379[1]> type name

string

127.0.0.1:6379[1]>

服务器的相关命令

ping:测试连接是否存活

\

\

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

127.0.0.1:6379> echo toto

"toto"

127.0.0.1:6379> echo toto2

"toto2"

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

\

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

quit:退出连接,或者exit

\

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

127.0.0.1:6379> keys *

1) "age2"

2) "name"

127.0.0.1:6379> dbsize

(integer) 2 //返回0表示有2个key

127.0.0.1:6379> select 1

OK

127.0.0.1:6379[1]> keys *

1) "gender"

2) "name"

3) "address"

4) "nianling"

127.0.0.1:6379[1]> dbsize

(integer) 4 //返回4表示有4个key

127.0.0.1:6379[1]>

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

127.0.0.1:6379[1]> info

# Server

redis_version:2.