Redis常用命令
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)0
redis 127.0.0.1:6379>exists age
(integer)1
redis 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)0
redis 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)1
redis 127.0.0.1:6379>ttl addr
(integer)8
redis 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代表选择到当前数据库)
OK
redis 127.0.0.1:6379>set age 30
""
redis 127.0.0.1:6379>move age 1 (将age从0数据库移动到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>get age
""
8、persist
移除给定key的过期时间
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 (-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_new
OK
redis 127.0.0.1:6379>keys *
1)“age_new”
redis 127.0.0.1:6379>
11、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>
12.统计key值的个数。
统计TimeLock_SAVETRANSDEAL_这个key值的个数.
/usr/local/redis/bin/redis-cli keys "*TimeLock_SAVETRANSDEAL_*"|wc -l
二、服务器的相关命令:
1、ping
测试连接是否存活
redis 127.0.0.1:6379>ping
PONG (代表连接正常)
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 1
OK
redis 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 dir
1)"dir"
2)"/root/4setup/redis-2.2.12"
redis 127.0.0.1:6379>
#本例中我们获取了dir这个参数配置的值,如果想获取全部参数的配置也很简单,只要执行“config get ”即可将全部的值显示出来.
config set
Redis Config Set 命令可以动态地调整 Redis 服务器的配置(configuration)而无须重启
使用config set命令设置redis密码,如果没在配置文件配置则redis重启后失效.
redis 127.0.0.1:> config set requirepass
redis 127.0.0.1:> config get requirepass #查询密码
(error) ERR operation not permitted
redis 127.0.0.1:> auth #密码验证
OK
redis 127.0.0.1:> config get requirepass #再次查询
) "requirepass"
) ""
8、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都清除了.
9、flushall
删除所有数据库中的所有key .
10,查看redis版本
[root@redis-m bin]# ./redis-cli -v
redis-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毫秒=,000微妙),指定redis执行命令的最大时间,超过将记录到慢查询日志中,不接受负值,如果设置为0,每条命令都要记录到慢查询日志中.
slowlog-max-len: 设置慢查询日志长度,如果慢查询日志已经到最大值,如果有新命令需要记录,就将最老那条记录删除.
获取慢查询的配置信息:
10.100.62.39:> config get slowlog-log-slower-than
) "slowlog-log-slower-than"
) ""
10.100.62.39:> config get slowlog*
) "slowlog-log-slower-than"
) ""
) "slowlog-max-len"
) ""
10.100.62.39:>
设置慢查询参数
config set slowlog-log-slower-than
config set slowlog-max-len
config rewrite
获取慢查询日志slowlog get 1,1表示输出前面一条。
10.100.62.39:> slowlog get
) ) (integer)
) (integer)
) (integer)
) ) "scan"
) ""
) "MATCH"
) "*"
) "COUNT"
) ""
10.100.62.39:>
每个命令都有4个属性组成,分别是慢查询日志的标识ID,发生时间戳、命令耗时、执行命令和参数
获取当前慢查询日志列表的长度
10.100.62.39:> slowlog len
(integer)
慢查询日志重置, 其实是清除了慢查询日志
10.100.62.39:> slowlog reset
OK
参考文档:https://blog.csdn.net/chenlushun12/article/details/79568766
Redis常用命令的更多相关文章
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis redis常用命令及内存分析总结(附RedisClient工具简介
redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...
- Redis常用命令与高级应用
附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...
- Redis快速起步及Redis常用命令大全
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- redis配置密码 redis常用命令
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy #requi ...
- redis常用命令及持久化机制
redis 常用命令 查找redis服务文件 find / -name redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...
- Redis 常用命令 大全
Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...
- No-sql之redis常用命令
转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...
随机推荐
- Redis学习笔记4-Redis配置详解
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...
- Sqlserver游标复习
经常写存储过程,但今天在游标使用过程中还是疏忽了一些事情,执行过程中一直执行不下去,后来直接sqlserver挂了,教训啊! 代码虽简单,望铭记: Create PROCEDURE [dbo].[te ...
- markdown编辑器
经过一番探索终于找到两个可以实时预览的markdown编辑器 一,sublime text 3 + MarkDown Editing + OmniMarkupPreviwer 安装方法网上均有,这里要 ...
- UVA&&POJ离散概率与数学期望入门练习[4]
POJ3869 Headshot 题意:给出左轮手枪的子弹序列,打了一枪没子弹,要使下一枪也没子弹概率最大应该rotate还是shoot 条件概率,|00|/(|00|+|01|)和|0|/n谁大的问 ...
- IntelliJ IDEA 乱码解决方案 (项目代码、控制台等)
IntelliJ IDEA 乱码解决方案 (项目代码.控制台等) 最近IDE从eclipse改成IntelliJ IDEA 了,原因是公司大部分人都在用这个IDE,而且一直推荐用,所以尝尝鲜.换的第一 ...
- [No000087]Linq排序,SortedList排序,二分法排序性能比较
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; ...
- thinkphp怎么实现图片验证码
1.控制器 function verify() { ob_clean();//丢弃输出缓冲区中的内容 $config = array( 'fontSize' => 20, // 字体大小 'le ...
- .Net的内置对象之一 Request
一.Request简介 Request对象是.net的内置对象之一,也是.net中常用的对象,用于获取客户端的信息,可以使用Request对象访问任何基于HTTP请求传递的所有信息.通过Request ...
- 解决Ajax不能跨域的方法
1. Ajax不能跨域请求的原因 同源策略(Same Origin Policy),是一种约定,该约定阻止当前脚本获取或者操作另一个域下的内容.所有支持Javascript的浏览器都支持同源策略,也 ...
- PyCharm3.0默认快捷键(翻译的)
PyCharm3.0默认快捷键(翻译的) PyCharm Default Keymap 1.编辑(Editing) Ctrl + Space 基本的代码完成(类.方法.属性)Ctrl + Alt ...