redis简单学习3-redis常用命令总结

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1.键值相关的命令

keys

返回满足给定pattern的所有key 
表达式* 代表取出所有的key  
redis 127.0.0.1:6379>
keys  * 
1) "myzset2" 
2) "myzset3" 
3) "mylist" 
4) "myset2" 
5) "myset3" 
6) "myset4" 
7) "k_zs_1" 

keys prefix_*     // 查看前缀为"prefix_"的所有keys

exists

确认一个key是否存在 存在返回1 不存在返回
redis 127.0.0.1:6379> exists name 
(integer) 0  
redis 127.0.0.1:6379> exists age 
(integer) 1 

del

删除一个key 
redis 127.0.0.1:6379> del age 
(integer) 1 
redis 127.0.0.1:6379> exists age 
(integer) 0 

expire

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

move


将当前数据库中的key转移到其它数据库中 
数据库有16个,从0-15 
select 0 表示选择第0个数据库,默认的就是第0个数据库 
redis 127.0.0.1:6379> select 0 
redis 127.0.0.1:6379> set age 20 
redis 127.0.0.1:6379> get age 
1) "20" 
redis 127.0.0.1:6379> move age 1 
redis 127.0.0.1:6379> get age 
(nil) 
redis 127.0.0.1:6379> select 1 
redis 127.0.0.1:6379> get age 
1) "20" 
redis 127.0.0.1:6379> select 0 

persist

移除给定key的过期时间 结果中的-1代表取消过期时间,而不是已经过期 
redis 127.0.0.1:6379> expire age 300 
(integer) 1 
redis 127.0.0.1:6379> ttl age 
(integer) 294 
redis 127.0.0.1:6379> persist age 
(integer) 1 
redis 127.0.0.1:6379> ttl age 
(integer) -1 

randomkey

随机返回key空间的一个key 
redis 127.0.0.1:6379> randomkey 
"mylist7" 
redis 127.0.0.1:6379> randomkey 
"mylist5" 

rename

重命名key 
redis 127.0.0.1:6379> keys * 
1) "age" 
redis 127.0.0.1:6379> rename age age_new 
OK 
redis 127.0.0.1:6379> keys * 
1) "age_new" 

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 

2.服务器相关命令

 

ping

测试连接是否存活 
该案例 第一个ping时,说明此连接正常 
第二个ping之前,将redis服务器停止,那么ping是失败的 
第三个ping之前,将redis服务器启动,那么ping是成功的 
redis 127.0.0.1:6379> ping 
PONG 
redis 127.0.0.1:6379> ping 
Could not connect to Redis at 127.0.0.1:6379:Connect refused 
not connected>ping 
PONG 
redis 127.0.0.1:6379>  

echo

在命令行打印一些内容 
redis 127.0.0.1:6379> echo lijie 
"lijie" 

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的这个数据库 

quit

退出连接 
redis 127.0.0.1:6379> quit 
[root@localhost redis-2.2.12]# 

dbsize

返回当前数据库中key的数目 
redis 127.0.0.1:6379> dbsize 
(integer) 18 
结果说明此库中有18key 

info

获取服务器的信息和统计 

config get

实时传储收到的请求 
redis 127.0.0.1:6379> config get addr 
1) "dir" 
2) "/root/4setup/redis-2.2.12" 
本例中我们获取了dir这个参数配置的值 
如果想获取全部参数的配置值,只需要执行 config get *,即可将全部的值都显示出来 

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 
在本例中我们将0号数据库中的key都清除了 

flushall

删除所有数据库中的所有key 
在本例中先查看了一个1号数据库中有一个key 
然后切换到0号数据库执行flushall命令 
结果1号库中的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> dbsize 
(integer) 0 
redis 127.0.0.1:6379> select 1 
ok 
redis 127.0.0.1:6379[1]> dbsize 
(integer) 0 

 

 

修改redis.conf文件可以改变数据库的数量 databases 160

 

连接其他的redis数据库

./redis-cli  –h  10.10.52.141  –p  6379

 

3.常用的命令总结

    1)连接操作命令
    quit
:关闭连接(connection
    auth
:简单密码认证
    help cmd 查看cmd帮助,例如:help quit
    
    2
)持久化
    save
:将数据同步保存到磁盘
    bgsave
:将数据异步保存到磁盘
    lastsave
:返回上次成功将数据保存到磁盘的Unix时戳
    shundown
:将数据同步保存到磁盘,然后关闭服务
    
    3
)远程服务控制
    info
:提供服务器的信息和统计
    monitor
:实时转储收到的请求
    slaveof
:改变复制策略设置
    config
:在运行时配置Redis服务器
    
    4
)对value操作的命令
    exists(key)
:确认一个key是否存在
    del(key)
:删除一个key
    type(key)
:返回值的类型
    keys(pattern)
:返回满足给定pattern的所有key
    randomkey
:随机返回key空间的一个
    keyrename(oldname, newname)
:重命名key
    dbsize
:返回当前数据库中key的数目
    expire
:设定一个key的活动时间(s
    ttl
:获得一个key的活动时间
    select(index)
:按索引查询
    move(key, dbindex)
:移动当前数据库中的keydbindex数据库
    flushdb
:删除当前选择数据库中的所有key
    flushall
:删除所有数据库中的所有key
    
    5
String
    set(key, value)
:给数据库中名称为keystring赋予值value
    get(key)
:返回数据库中名称为keystringvalue
    getset(key, value)
:给名称为keystring赋予上一次的value
    mget(key1, key2,…, key N)
:返回库中多个stringvalue
    setnx(key, value)
:添加string,名称为key,值为value
    setex(key, time, value)
:向库中添加string,设定过期时间time
    mset(key N, value N)
:批量设置多个string的值
    msetnx(key N, value N)
:如果所有名称为key istring都不存在
    incr(key)
:名称为keystring1操作
    incrby(key, integer)
:名称为keystring增加integer
    decr(key)
:名称为keystring1操作
    decrby(key, integer)
:名称为keystring减少integer
    append(key, value)
:名称为keystring的值附加value
    substr(key, start, end)
:返回名称为keystringvalue的子串
    
    6
List 
    rpush(key, value)
:在名称为keylist尾添加一个值为value的元素
    lpush(key, value)
:在名称为keylist头添加一个值为value 元素
    llen(key)
:返回名称为keylist的长度
    lrange(key, start, end)
:返回名称为keyliststartend之间的元素
    ltrim(key, start, end)
:截取名称为keylist
    lindex(key, index)
:返回名称为keylistindex位置的元素
    lset(key, index, value)
:给名称为keylistindex位置的元素赋值
    lrem(key, count, value)
:删除countkeylist中值为value的元素
    lpop(key)
:返回并删除名称为keylist中的首元素
    rpop(key)
:返回并删除名称为keylist中的尾元素
    blpop(key1, key2,… key N, timeout)
lpop命令的block版本。
    brpop(key1, key2,… key N, timeout)
rpopblock版本。
    rpoplpush(srckey, dstkey)
:返回并删除名称为srckeylist的尾元素,

1.                   并将该元素添加到名称为dstkeylist的头部
    
    7
Set
    sadd(key, member)
:向名称为keyset中添加元素member
    srem(key, member)
:删除名称为keyset中的元素member
    spop(key)
:随机返回并删除名称为keyset中一个元素
    smove(srckey, dstkey, member)
:移到集合元素
    scard(key)
:返回名称为keyset的基数
    sismember(key, member)
member是否是名称为keyset的元素
    sinter(key1, key2,…key N)
:求交集
    sinterstore(dstkey, (keys))
:求交集并将交集保存到dstkey的集合
    sunion(key1, (keys))
:求并集
    sunionstore(dstkey, (keys))
:求并集并将并集保存到dstkey的集合
    sdiff(key1, (keys))
:求差集
    sdiffstore(dstkey, (keys))
:求差集并将差集保存到dstkey的集合
    smembers(key)
:返回名称为keyset的所有元素
    srandmember(key)
:随机返回名称为keyset的一个元素
    
    8
Hash
    hset(key, field, value)
:向名称为keyhash中添加元素field
    hget(key, field)
:返回名称为keyhashfield对应的value
    hmget(key, (fields))
:返回名称为keyhashfield i对应的value
    hmset(key, (fields))
:向名称为keyhash中添加元素field 
    hincrby(key, field, integer)
:将名称为keyhashfieldvalue增加integer
    hexists(key, field)
:名称为keyhash中是否存在键为field的域
    hdel(key, field)
:删除名称为keyhash中键为field的域
    hlen(key)
:返回名称为keyhash中元素个数
    hkeys(key)
:返回名称为keyhash中所有键
    hvals(key)
:返回名称为keyhash中所有键对应的value
    hgetall(key)
:返回名称为keyhash中所有的键(field)及其对应的value


转载于:https://my.oschina.net/hanchao/blog/357153

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/401092.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微软的创新还是败笔?Windows 8为苹果创造天赐良机

网络安全公司Avast近日公布的数据显示:Windows系统使用人数正在不断下降。这一结果对微软来说可谓噩梦,于此同时,苹果则不断加强市场占有率。又是什么导致了这样的结果?接下来就看看最主要的几点: 调查覆盖了13.5万Wi…

testbench常用任务之SPI slave输出数据

模仿了SPI master从SPI slave读取数据的MiSO数据状态 每8个clk后读取的数据加1 用的一些额外寄存器需要自己声明和初始化 //------------------------------------------------------------------------- //send serial data which is increase by 1 on MiSO line //----------…

Vue生产环境调试的方法

Python微信订餐小程序课程视频 https://blog.csdn.net/m0_56069948/article/details/122285951 Python实战量化交易理财系统 https://blog.csdn.net/m0_56069948/article/details/122285941 vue 生产环境默认是无法启用vue devtools的,如果生产应用出了问题&…

RavenDB:基于Windows/.NET平台的NoSQL数据库

众所周知,NoSQL运动旨在成为大数据时代传统关系数据库管理系统的替代品。如今Microsoft对开源的态度有所转变,RavenDB就是很好的例子。Microsoft对RavenDB(NoSQL数据库)的认可令很多人感到惊讶。RavenDB可以轻易的替代关系数据库管…

JDBC实例--JDBC连接池技术解密,连接池对我们不再陌生

一、为什么我们要用连接池技术? 前面的数据库连接的建立及关闭资源的方法有些缺陷。统舱传统数据库访问方式:一次数据库访问对应一个物理连接,每次操作数据库都要打开、关闭该物理连接, 系统性能严重受损。 解决方案:数据库连接池&#xff08…

重温51汇编指令(附实验)

Python微信订餐小程序课程视频 https://blog.csdn.net/m0_56069948/article/details/122285951 Python实战量化交易理财系统 https://blog.csdn.net/m0_56069948/article/details/122285941 重温51汇编指令(附实验) 写在前面: 在电子控制…

SSH HTTPS 公钥、秘钥、对称加密、非对称加密、 总结理解

2019独角兽企业重金招聘Python工程师标准>>> 作者:shede333主页:http://my.oschina.net/shede333 && http://blog.sina.com.cn/u/1509658847版权声明:原创文章,版权声明:自由转载-非商用-非衍生-保…

升级nginx,查看已经安装的模块,并隐藏或者修改版本号

升级前,查看已经安装的版本以及模块[rootmail ~]# /opt/nginx/sbin/nginx -Vnginx version: nginx/0.5.34 built by gcc 3.4.6 20060404 (Red Hat 3.4.6-3)configure arguments: --prefix/opt/nginx --sbin-path/opt/nginx/sbin/nginx --conf-path/opt/nginx/conf/n…

SpringCloudAlibaba微服务docker容器打包和部署示例实战

Python微信订餐小程序课程视频 https://blog.csdn.net/m0_56069948/article/details/122285951 Python实战量化交易理财系统 https://blog.csdn.net/m0_56069948/article/details/122285941 概述 我们使用前面《SpringCloudAlibaba注册中心与配置中心之利器Nacos实战与源码…

MongoVUE的Collections数据不显示的解决方法

问题描述: 使用 mongoDB数据库, 数据添加成功了,使用命令行能查询出来,但在MongoVUE 中数据却不显示 (我使用的是 mongoDB 3.4 的版本) 原因:引擎问题,只要降到2.X版本就可以显示了     3.x默认是wire…

SaltStack WEB UI Halite初体验

闲来无聊,话说saltstack webui halite还一直没玩,于是就凑今天体验一把;很多尝鲜的同学都说halite的功能较少,而其也正符合其说明console,不过其UI我还是蛮喜欢的,个人觉得比较清新简洁、挺好下面就来安装体…

Envoy熔断限流实践(二)Rainbond基于RLS服务全局限流

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…

TAppEncoder的main函数

TAppEncoder是编码器工程,完成视频序列的编码。 运行时,首先调用encmain.cpp中的main函数 main函数中完成的工作主要有初始化encoder类,解析cfg文件,然后调用TAppEncTop::encode函数进入下一层,并且对编码过程进行计时…

【大话云原生】微服务篇-五星级酒店的服务方式

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…

如何在Web前端实现CAD图文字全文搜索功能之技术分享

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…

基于Java (spring-boot)的仓库管理系统

一、项目介绍 本系统的使用者一共有系统管理员、仓库管理员和普通用户这3种角色: 1.系统管理员:通过登录系统后,可以进行管理员和用户信息的管理、仓库和物品分类的管理,以及操作日志的查询,具有全面的系统管理权限。 2.仓库管理…

基于语义感知SBST的API场景测试智能生成

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…

2015 CALLED THE INTERFACE OF 2014

Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket豆瓣:BYSocketReprint it anywhere u want. ”Hi , Happy New Year.Written in Stupid Enlish,Dont push me *.* ” 2014 System 2015 is coming.But 2014 is not over.…

论文解读(MERIT)《Multi-Scale Contrastive Siamese Networks for Self-Supervised Graph Representation Learni

🚀 优质资源分享 🚀 学习路线指引(点击解锁)知识定位人群定位🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一…

Fiddler抓包9-保存会话(save)

前言 为什么要保存会话呢?举个很简单的场景,你在上海测试某个功能接口的时候,发现了一个BUG,而开发这个接口的开发人员是北京的一家合作公司。你这时候给对方开发提bug, 如何显得专业一点,能让对方心服口服…