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常用命令的更多相关文章

  1. 第2讲 Redis常用命令与高级应用

    目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...

  2. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

  3. redis redis常用命令及内存分析总结(附RedisClient工具简介

    redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...

  4. Redis常用命令与高级应用

    附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...

  5. Redis快速起步及Redis常用命令大全

    本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...

  6. redis配置密码 redis常用命令

    redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy   #requi ...

  7. redis常用命令及持久化机制

    redis  常用命令 查找redis服务文件 find / -name  redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...

  8. Redis 常用命令 大全

    Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...

  9. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

随机推荐

  1. 理解 Nova 架构 - 每天5分钟玩转 OpenStack(23)

    Compute Service Nova 是 OpenStack 最核心的服务,负责维护和管理云环境的计算资源. OpenStack 作为 IaaS 的云操作系统,虚拟机生命周期管理也就是通过 Nov ...

  2. 联发科发布全球首款搭载Android TV的智能电视系统芯片MT5595

    联发科发布全球首款搭载Android TV的智能电视系统芯片MT5595 admin 资讯 01-07 1 1月7日消息,联发科宣布与Google共同开发出全世界第一个搭载Android TV操作系统 ...

  3. 使用Struts框架,实现用户登陆功能

    前言:本篇文章是本人这周学习的一个小结,在自我总结的同时,希望也能够给其他同学带来一点帮助.本文主要知识是参照书本上的知识点以及网上其他博客文章,在上机操练后的所得,具体源码主要来自http://bl ...

  4. MVC MemeberShip vs. Asp.net Identity

    参考 从Membership 到 .NET4.5 之 ASP.NET Identity Extending Identity Accounts and Implementing Role-Based ...

  5. [WPF系列]-Data Validation

    项目经常前台界面涉及到用户输入时,我们常常会用到数据有效性的验证.在网页中我们之前用js来校验Form中的数据有效性.在WPF中我们如何实现这种验证机制了?答案:INotifyDataErrorInf ...

  6. Android APP 两种用程序拨号的方式

    想在APP中添加一个拨号功能该怎样做呢?Android提供了两种方式,一种是ACTION_CALL方式直接拨打,另一种是ACTION_DIAL方式打开系统的拨号界面. 下面我们来做个小例子 首先需要在 ...

  7. Java JDBC基础学习小结

    JDBC是一个Java应用程序接口,作用是封装了对数据库的各种操作.JDBC由类和接口组成,使用Java开发数据库应用都需要4个主要的接口:Driver.Connection.Statement.Re ...

  8. sql 入门经典(第五版) Ryan Stephens 学习笔记 后续——存储引擎

    一.引擎基础 1 查看系统支持的存储引擎 show engines; 2 查看表使用的存储引擎两种方法: a.show table status from database_name where na ...

  9. HDU2089 不要62[数位DP]

    不要62 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  10. Spring中的JDK动态代理

    Spring中的JDK动态代理 在JDK1.3以后提供了动态代理的技术,允许开发者在运行期创建接口的代理实例.在Sun刚推出动态代理时,还很难想象它有多大的实际用途,现在动态代理是实现AOP的绝好底层 ...