博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis常用命令
阅读量:5889 次
发布时间:2019-06-19

本文共 4243 字,大约阅读时间需要 14 分钟。

Redis常用命令

Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.
1.键值相关命令
2.服务器相关命令

一、键值相关命令

1、get

get 键值当 key 不存在时,返回 nil ,否则,返回 key 的值。如果返回“1”,则表示键值锁住了.

2.set 

用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。

 

redis 127.0.0.1:6379> SET key "value"OK

 

3、keys

返回满足给定pattern的所有键.

redis 127.0.0.1:6379>keys * 或者keys my*1)"myzset2"2)"myzset3"3)"mylist"4)"myset2"5)"k_zs_1"

4、exists

确认一个key是否存在.

redis 127.0.0.1:6379>exists name(integer)0redis 127.0.0.1:6379>exists age(integer)1redis 127.0.0.1:6379>从结果来看,name键不存在,age键存在.

5、del

删除一个key

redis 127.0.0.1:6379>del age(integer)1 (1,代表删除成功)redis 127.0.0.1:6379>exists age(integer)0redis 127.0.0.1:6379>

批量删除key值:

例如:删除以TimeLock_SAVETRANSDEAL_开头的所以key./usr/local/redis/bin/redis-cli keys "TimeLock_SAVETRANSDEAL_*" |xargs /usr/local/redis/bin/redis-cli del

6、expire

设置一个key的过期时间

redis 127.0.0.1:6379>expire addr 10(integer)1redis 127.0.0.1:6379>ttl addr (integer)8redis 127.0.0.1:6379>expire addr(integer)-1#本例中,我们设置addr这个key的过期时间是10秒,然后我们不断的用ttl来获取这个key的有效时长,直到为-1说明此值以过期.

 7、move

将当前数据库中的key转移到其他数据库中.

redis 127.0.0.1:6379>select 0 (0代表选择到当前数据库)OKredis 127.0.0.1:6379>set age 30"30"redis 127.0.0.1:6379>move age 1 (将age从0数据库移动到1数据库)(integer)1redis 127.0.0.1:6379>get age(nil)redis 127.0.0.1:6379>select 1OKredis 127.0.0.1:6379>get age"30"

8、persist

移除给定key的过期时间

redis 127.0.0.1:6379> expire age 300(integer)1redis 127.0.0.1:6379>ttl age(integer)294redis 127.0.0.1:6379>persist age(integer)1redis 127.0.0.1:6379>ttl age(integer)-1 (-1代表取消掉过期时间)redis 127.0.0.1:6379>

9、randomkey

随机返回key空间的一个key

redis 127.0.0.1:6379>randomkey“mylist”redis 127.0.0.1:6379>randomkey“mylist5”redis 127.0.0.1:6379>

10、rename

重命名key

redis 127.0.0.1:6379>keys my*1)"age"redis 127.0.0.1:6379>rename age age_newOKredis 127.0.0.1:6379>keys *1)“age_new”redis 127.0.0.1:6379>

11、type

返回值的类型

redis 127.0.0.1:6379>type addrstringredis 127.0.0.1:6379>type myzset2zsetredis 127.0.0.1:6379>type mylistlistredis 127.0.0.1:6379>

12.统计key值的个数。

统计TimeLock_SAVETRANSDEAL_这个key值的个数./usr/local/redis/bin/redis-cli keys "*TimeLock_SAVETRANSDEAL_*"|wc -l

二、服务器的相关命令:

1、ping

测试连接是否存活

redis 127.0.0.1:6379>pingPONG (代表连接正常)Could not connect to Redis at 127.0.0.1:6379:Connection refused (连接失败)

2、echo

在命令行打印一些内容

redis 127.0.0.1:6379>echo lijie"lijie"redis 127.0.0.1:6379>

3、select

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

redis 127.0.0.1:6379>select 1OKredis 127.0.0.1:6379>select 16(error)err invalid DB index (没有编号为16的数据库)redis 127.0.0.1:6379>

4、quit exit crtl+c

退出连接

redis 127.0.0.1:6379>quit[root@localhost ]#

5、dbsize

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

redis 127.0.0.1:6379>dbsize(integer)18 (此库中有18个key)redis 127.0.0.1:6379>

6、info

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

7、config get

实时传储收到的请求

redis 127.0.0.1:6379>config get dir1)"dir"2)"/root/4setup/redis-2.2.12"redis 127.0.0.1:6379>#本例中我们获取了dir这个参数配置的值,如果想获取全部参数的配置也很简单,只要执行“config get ”即可将全部的值显示出来.

8、flushdb

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

redis 127.0.0.1:6379>dbsize(integer)18redis 127.0.0.1:6379>flushdbOKredis 127.0.0.1:6379>dbsize(integer)0redis 127.0.0.1:6379>#在本例中我们将0号数据库中的key都清除了.

9、flushall

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

10,查看redis版本

[root@redis-m bin]# ./redis-cli -vredis-cli 2.8.7

 11.redis远程连接

redis-cli -h 192.168.1.1 -p 6379 -a password

12.Redis 慢查询

何为慢查询?

系统在命令执行前后计算每条命令的执行时间,当超过预定阀值时,记录命令的发生时间,耗时,命令的详细信息等。

Redis客户端执行一条命令分为发送命令、命令排队、命令执行、返回结果。慢查询只统计命令执行,所以没有慢查询并不代表客户端没有超时问题。

慢查询的两个配置参数

slowlog-log-slower-than: 单位微秒(1秒=1000毫秒=1000,000微妙),指定redis执行命令的最大时间,超过将记录到慢查询日志中,不接受负值,如果设置为0,每条命令都要记录到慢查询日志中.slowlog-max-len: 设置慢查询日志长度,如果慢查询日志已经到最大值,如果有新命令需要记录,就将最老那条记录删除.

获取慢查询的配置信息:

10.100.62.39:6379> config get slowlog-log-slower-than1) "slowlog-log-slower-than"2) "10000"10.100.62.39:6379> config get slowlog*1) "slowlog-log-slower-than"2) "10000"3) "slowlog-max-len"4) "128"10.100.62.39:6379>

设置慢查询参数

config set slowlog-log-slower-than 20000config set slowlog-max-len 1024config rewrite

获取慢查询日志slowlog get 1,1表示输出前面一条。

10.100.62.39:6379> slowlog get 11) 1) (integer) 403   2) (integer) 1531289663   3) (integer) 10492   4) 1) "scan"      2) "5395137"      3) "MATCH"      4) "*"      5) "COUNT"      6) "10000"10.100.62.39:6379>

每个命令都有4个属性组成,分别是慢查询日志的标识ID,发生时间戳、命令耗时、执行命令和参数

获取当前慢查询日志列表的长度

10.100.62.39:6379>  slowlog len(integer) 128

慢查询日志重置, 其实是清除了慢查询日志

10.100.62.39:6379> slowlog resetOK

 

参考文档:https://blog.csdn.net/chenlushun12/article/details/79568766

你可能感兴趣的文章
视频编解码学习之五:差错控制及传输
查看>>
Postman教程
查看>>
python模块--os模块
查看>>
HSSFRow获取单元格方法与区别
查看>>
洛谷 1365 WJMZBMR打osu! / Easy
查看>>
删除UINavigationItem上的BarButtonItem
查看>>
数据分析相关模块
查看>>
Python数据结构1-----基本数据结构和collections系列
查看>>
SQL Denali-FileTable
查看>>
C# 图像处理:复制屏幕到内存中,拷屏操作
查看>>
PHP微信支付流程
查看>>
linux下单节点oracle数据库间ogg搭建
查看>>
PLSQL Developer软件使用大全
查看>>
swift三方库
查看>>
杭州之行
查看>>
oracle ORA-00917: missing comma 是因为少逗号
查看>>
策略模式简介
查看>>
UIViewController中loadView的用法(应当注意的几点)
查看>>
POJ NOI0105-42 画矩形
查看>>
Java 数组在内存中的结构
查看>>