文档章节

Redis学习笔记四:数据类型之外的常用命令及实例演示

孟飞阳
 孟飞阳
发布于 2016/07/04 11:17
字数 1227
阅读 22
收藏 0

一 .Redis常用命令

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

        a.键值相关命令

        b.服务器相关命令

1.键值相关命令

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

1.  redis 127.0.0.1:6379> keys *  
2.  1) "myzset2"  
3.  2) "myzset3"  
4.  3) "mylist"  
5.  4) "myset2"  
6.  5) "myset3"  
7.  6) "myset4"  
8.  7) "list1"  

9.  redis 127.0.0.1:6379> keys my*  
10. 1) "myzset2"  
11. 2) "myzset3"  
12. 3) "mylist"  
13. 4) "myset2"  
14. 5) "myset3"  
15. 6) "myset4" 

         exists:确认一个key是否存在。

         如下从结果来看,name键不存在,age键存在。

1.  redis 127.0.0.1:6379> exists name  
2.  (integer) 0  

3.  redis 127.0.0.1:6379> exists age  
4.  (integer) 1 

        del:删除一个key

1.  redis 127.0.0.1:6379> del age  
2.  (integer) 1  

3.  redis 127.0.0.1:6379> exists age  
4.  (integer) 0

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

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

1.  redis 127.0.0.1:6379> expire addr 10  
2.  (integer) 1  
3.  redis 127.0.0.1:6379> ttl addr  
4.  (integer) 8  
5.  redis 127.0.0.1:6379> ttl addr  
6.  (integer) 1  
7.  redis 127.0.0.1:6379> ttl addr  
8.  (integer) -1  //代表addr已经过期  
9.  redis 127.0.0.1:6379> get addr  
10. (nil)  
11. redis 127.0.0.1:6379> exists addr  
12. (integer) 0  

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

        数据库是从0到15,select 0表示选择0号数据库。

1.  redis 127.0.0.1:6379> select 0  
2.  OK  
3.  redis 127.0.0.1:6379> set age 30  
4.  OK  
5.  redis 127.0.0.1:6379> get age  
6.  "30"  
7.  redis 127.0.0.1:6379> move age 1  //将age从0数据库移到1数据库  
8.  (integer) 1  
9.  redis 127.0.0.1:6379> get age  
10. (nil)  
11. redis 127.0.0.1:6379[1]> select 1  
12. OK  
13. redis 127.0.0.1:6379[1]> get age  
14. "30"  
15. redis 127.0.0.1:6379[1]> select 0  
16. OK  
17. redis 127.0.0.1:6379> exists age  
18. (integer) 0 

 

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

1.  redis 127.0.0.1:6379> expire age 300  
2.  (integer) 1  
3.  redis 127.0.0.1:6379> ttl age  
4.  (integer) 294  
5.  redis 127.0.0.1:6379> persist age  
6.  (integer) 1  
7.  redis 127.0.0.1:6379> ttl age  
8.  (integer) -1  //-1表示取消了过期时间  

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

1.  redis 127.0.0.1:6379> randomkey  
2.  "mylist7"  
3.  redis 127.0.0.1:6379> randomkey  
4.  "mylist5"

        rename:重命名key。

1.  redis 127.0.0.1:6379> keys *  
2.  1) "age"  
3.  redis 127.0.0.1:6379> rename age age_new  
4.  OK  
5.  redis 127.0.0.1:6379> keys *  
6.  1) "age_new" 

        type:返回值的类型。

1.  redis 127.0.0.1:6379> type addr  
2.  string  
3.  redis 127.0.0.1:6379> type myzset2  
4.  zset  
5.  redis 127.0.0.1:6379> type mylist  
6.  list 

2.服务器相关命令

        ping:测试连接是否存活。

1.  redis 127.0.0.1:6379> ping  
2.  PONG  
3.  //执行下面命令之前,停止redis服务器  
4.  redis 127.0.0.1:6379> ping  
5.  Could not connect to Redis at 127.0.0.1:6379:Connection refused  
6.  //执行下面命令之前,启动redis服务器  
7.  redis 127.0.0.1:6379> ping  
8.  PONG 

 

        第一个ping时,说明此连接正常;第二个ping之前,我们将redis服务器停止,那么ping是失败的;第三个ping之前,我们将redis服务器启动,那么ping是成功的。

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

1.  redis 127.0.0.1:6379> echo lamp  
2.  "lamp"  

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

1.  redis 127.0.0.1:6379> select 1  
2.  OK  
3.  redis 127.0.0.1:6379[1]> select 16  
4.  (error) ERR invalid DB index   
5.  redis 127.0.0.1:6379[16]>   

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

        quit:退出连接。

1.  redis 127.0.0.1:6379> quit  
2.  [root@localhost redis-2.2.12]# 

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

1.  redis 127.0.0.1:6379> dbsize  
2.  (integer) 18 

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

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

1.  redis 127.0.0.1:6379> info  
2.  redis_version:2.2.12  
3.  redis_git_sha1:00000000  
4.  redis_git_dirty:0  
5.  arch_bits:32  
6.  multiplexing_api:epoll  
7.  process_id:28480  
8.  uptime_in_seconds:2515  
9.  uptime_in_days:0  
10. .  
11. .  
12. .  
13. redis 127.0.0.1:6379>

 

        config get:实时传储收到的请求。

1.  redis 127.0.0.1:6379> config get dir  
2.  1) "dir"  
3.  2) "/root/4setup/redis-2.2.12"  
4.  redis 127.0.0.1:6379>  

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

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

1.  redis 127.0.0.1:6379> dbsize  
2.  (integer) 18  
3.  redis 127.0.0.1:6379> flushdb  
4.  OK  
5.  redis 127.0.0.1:6379> dbsize  
6.  (integer) 0  

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

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

1.  redis 127.0.0.1:6379[1]> dbsize  
2.  (integer) 1  
3.  redis 127.0.0.1:6379> select 0  
4.  OK  
5.  redis 127.0.0.1:6379> flushall  
6.  OK  
7.  redis 127.0.0.1:6379> select 1  
8.  OK  
9.  redis 127.0.0.1:6379[1]> dbsize  
10. (integer) 0  
11. redis 127.0.0.1:6379[1]> keys *  
12. (empty list or set)  
13. redis 127.0.0.1:6379[1]> select 0  
14. OK  
15. redis 127.0.0.1:6379> keys *   
16. (empty list or set) 

        在本例中我们先查看了一个1号数据库中有一个key,然后切换到0号库执行flushall命令,结果1号库中的key也被清除了,说是此命令工作正常。

© 著作权归作者所有

共有 人打赏支持
孟飞阳
粉丝 204
博文 953
码字总数 540957
作品 5
朝阳
个人站长
Redis学习笔记之Redis数据类型(四)

Redis的五大数据类型 1.1 String(字符串) String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 string类型是二进制安全的。意思...

残风vs逝梦
2016/08/07
44
0
SegmentFault 技术周刊 Vol.37 - 分布式缓存利器:Redis

Redis 是由意大利程序员 Salvatore Sanfilippo(昵称:antirez)开发的一款内存高速缓存数据库。Redis 全称为 Remote Dictionary Server(远程数据服务),使用 C 语言编写,是一个 key-valu...

keke
2017/11/16
0
0
redis学习笔记(三)之其他命令和特性

redis学习笔记(一)之安装测试 redis学习笔记(二)之数据类型 一、基本特性 1、reids 默认端口:6379; 2、默认支持16个数据库,建立连接后自动选择0号数据库,建议不同的应用使用不同的r...

憨豆公子
2016/08/19
21
0
Redisbook学习笔记(3)数据类型之对象处理机制

在Redis 的命令中,用于对键(key)进行处理的命令占了很大一部分,而对于键所保存的值的 类型(后简称“键的类型” ),键能执行的命令又各不相同。 比如说,LPUSH 和LLEN 只能用于列表键,...

shayang88
2014/02/10
0
0
Redisbook学习笔记(3)数据类型之字符串

REDIS_STRING (字符串)是Redis 使用得最为广泛的数据类型,它除了是SET 、GET 等命令 的操作对象之外,数据库中的所有键,以及执行命令时提供给Redis 的参数,都是用这种类型 保存的。 字符...

shayang88
2014/02/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java并发备忘

不安全的“先检查后执行”,代码形式如下: if(条件满足){ //这里容易出现线程安全问题//doSomething}else{//doOther} 读取-修改-写入 原子操作:使用CAS技术,即首先从V中读取...

Funcy1122
今天
0
0
SpringBoot2.0 停机

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器...

Canaan_
昨天
0
1
Confluence 6 外部参考

一个外部参考的意思是任何站点链接到你 Confluence 的实例。任何时候当 Confluence 的用户单击这个外部链接的时候,Confluence 可以记录这次单击为参考。 在默认的情况下,外部链接的参考链接...

honeymose
昨天
0
0
Android中的设计模式之抽象工厂模式

参考 《设计模式解析》 第十一章 Abstract Factory模式 《设计模式:可复用面向对象软件的基础 》3.1 Abstract Factory 抽象工厂 对象创建型模式 《Android源码设计模式解析与实战》第6章 创...

newtrek
昨天
0
0
Redis | 地理空间(GEO)的一个坑

Redis的地理空间(Geo)是个好东西,轻轻松松的就可以把地图描点的问题处理了, 最近却遇到一个坑...Redis采用的Msater-Slave模式, 运用GEORADIUS在salve读取对应的数据,新增了从节点但是从不返...

云迹
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部