redis提供了丰富的命令,这些命令可以在linux终端使用。在各类语言中,这些命令都有对应的方法。

一、键值相关

1、keys

  返回满足给定pattern的所有key

127.0.0.1:6379> keys *
1) "key1"
2) "num"
3) "list"
4) "qq"
5) "key2"
6) "key3"
7) "hashkey"
8) "setkey"
9) "listkey2"
10) "num2"
11) "num1"
12) "listkey"
13) "listkey1"
14) "key5"
15) "test"
16) "name"
17) "zsetkey"
18) "setkey-1"
19) "setkey-2"
20) "num3"
21) "key4"
22) "num4"
127.0.0.1:6379> keys num*
1) "num"
2) "num2"
3) "num1"
4) "num3"
5) "num4"

2、exists

  确认key是否存在

127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists key
(integer) 0

3、del

  删除一个key

127.0.0.1:6379> exists qq
(integer) 1
127.0.0.1:6379> del qq
(integer) 1
127.0.0.1:6379> exists qq
(integer) 0

4、expire

  设置一个key的过期时间(单位为秒)

127.0.0.1:6379> ttl name
(integer) -1
127.0.0.1:6379> expire name 10
(integer) 1
127.0.0.1:6379> ttl name
(integer) 8
127.0.0.1:6379> ttl name
(integer) 5
127.0.0.1:6379> ttl name
(integer) 0
127.0.0.1:6379> ttl name
(integer) -2
127.0.0.1:6379> get name
(nil)

5、move

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

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get test
(nil)
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> get test
"redis test"
127.0.0.1:6379> move test 1
(integer) 1
127.0.0.1:6379> get test
(nil)
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get test
"redis test"

6、persist

  移除给定key的过期时间

127.0.0.1:6379> ttl list
(integer) -1
127.0.0.1:6379> expire list 300
(integer) 1
127.0.0.1:6379> ttl list
(integer) 296
127.0.0.1:6379> persist list
(integer) 1
127.0.0.1:6379> ttl list
(integer) -1

7、randomkey

  随机返回一个key

127.0.0.1:6379> randomkey
"num"
127.0.0.1:6379> randomkey
"key5"
127.0.0.1:6379> randomkey
"num3"

8、rename/renamenx

  重命名key

127.0.0.1:6379> rename list list-new
OK
127.0.0.1:6379> exists list
(integer) 0
127.0.0.1:6379> exists list-new
(integer) 1
127.0.0.1:6379> keys list*
1) "listkey2"
2) "list-new"
3) "listkey"
4) "listkey1"
127.0.0.1:6379> rename listkey listkey1
OK
127.0.0.1:6379> exists listkey
(integer) 0
127.0.0.1:6379> exists listkey1
(integer) 1
127.0.0.1:6379> renamenx listkey1 listkey2
(integer) 0
127.0.0.1:6379> renamenx listkey1 listkey3
(integer) 1

9、type

  返回值的类型

127.0.0.1:6379> type num
string
127.0.0.1:6379> type list-new
list
127.0.0.1:6379> type hashkey
hash
127.0.0.1:6379> type setkey
set
127.0.0.1:6379> type zsetkey
zset

二、服务器相关

1、ping

  测试是否正常连接

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> ping aaa
"aaa"
# 关闭redis服务器
127.0.0.1:6379> shutdown
Could not connect to Redis at 127.0.0.1:6379: Connection refused
# 开启服务器
not connected> ping aaa
"aaa"
127.0.0.1:6379> ping
PONG

2、echo

  打印内容

127.0.0.1:6379> echo message
"message"
127.0.0.1:6379> echo ping
"ping"

3、select

  选择数据库,redis数据库编号范围是0~15,默认登录0

127.0.0.1:6379> select  1
OK
127.0.0.1:6379[1]> select 15
OK
127.0.0.1:6379[15]> select 16
(error) ERR invalid DB index
127.0.0.1:6379[15]> select 0
OK

4、quie/exit

  退出连接。

[root@localhost ~]# redis-cli
127.0.0.1:6379> quit
[root@localhost ~]#
[root@localhost ~]# redis-cli
127.0.0.1:6379> exit
[root@localhost ~]#

5、dbsize

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

127.0.0.1:6379> dbsize
(integer) 18

6、info

  获取服务器的信息和统计

127.0.0.1:6379> info
# Server
redis_version:3.2.5
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:75f5eeeebaabc5a4
redis_mode:standalone
os:Linux 3.10.0-229.el7.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
...
...
...
...
127.0.0.1:6379>

7、monitor

  实时显示收到的请求

127.0.0.1:6379> monitor
OK
# 有客户端进行连接
1481013661.020891 [0 127.0.0.1:52881] "COMMAND"
# 客户端执行的命令
1481013672.994979 [0 127.0.0.1:52881] "keys" "*"
1481013695.957605 [0 127.0.0.1:52881] "get" "name"
1481013704.682609 [0 127.0.0.1:52881] "set" "name" "linux"

8、config get

  获取服务器配置信息。

127.0.0.1:6379> config get dir
1) "dir"
2) "/usr/local/redis/6379"

9、flushdb

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

127.0.0.1:6379> dbsize
(integer) 19
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> dbsize
(integer) 0

10、flushall

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

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> dbsize
(integer) 1
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> dbsize
(integer) 4
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> dbsize
(integer) 0
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> dbsize
(integer) 0

三、安全相关

  因为各种安全的原因,我们可能想要对数据库设置密码。

  修改配置文为以下的语句:

requirepass foobared

  使用系统默认的密码“foobared”。注意:因为redis数据库速度相当快,可以做到1秒150K次的密码尝试,所以实际使用时需要设置足够强大的密码。

  重新启动数据库。然后再用数据库连接操作时,就会发生下面的情况:

127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.

  如果想要操作需要输入口令

127.0.0.1:6379> auth foobared
OK
127.0.0.1:6379> keys *
1) "name"

  我们还可以在连接服务器的时候就指定口令:

[root@localh ~]# redis-cli -a foobared
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379>

Redis学习笔记-常用命令篇(Centos7)的更多相关文章

  1. Redis学习笔记--常用命令

    以下为本人学习Redis的备忘录,记录了大部分常用命令 1.客户端连接redis服务端: ===启动Redis服务端 redis-server /yourpath/redis.conf ===启动Re ...

  2. Redis学习笔记~常用命令总结

    回到目录 客户端redis-cli常用的命令总结 连接到服务器 redis-cli -h 127.0.0.1 -p 6379 --连接指定的redis服务器 发布/订阅, pub/sub模式运行在re ...

  3. Redis 学习之常用命令及安全机制

    该文使用centos6.5 64位    redis3.2.8 一.redis常用命令 键值常用命令: 1. keys 返回满足pattern的所有key. 127.0.0.1:6379> ke ...

  4. Hexo学习笔记--常用命令及部署步骤

    参考资料: Hexo搭建Github静态博客:http://www.cnblogs.com/zhcncn/p/4097881.htmlHexo:独立博客新玩法:http://www.aips.me/h ...

  5. SQL学习笔记---常用命令

    常用命令 变量 1.声明 declare @变量名 类型,… 2.赋值 1.同时赋值多个变量(可以结合查询) select @变量名=表达式1,表达式2 2.单个赋值(推荐) set @变量名=表达式 ...

  6. ionic学习笔记—常用命令

    Ionic CLI介绍 Ionic CLI是开发Ionic应用程序过程中使用的主要工具.它就像一个瑞士军刀:它在一个界面下汇集了大量工具. CLI包含许多对Ionic开发至关重要的命令,例如start ...

  7. Redis学习笔记-事务控制篇(Centos7)

    一.事务控制 1.简单事务控制 redis可以使用mult命令将之后的命令都存放在队列中,只有使用exec命令时才全部执行. 127.0.0.1:6379> multi OK 127.0.0.1 ...

  8. Redis学习笔记-数据操作篇(Centos7)

    一.基本操作 1.插入数据 127.0.0.1:6379> set name cos1eqlg0 OK 这样就在redis中设置了一个key-value键值对 2.查询数据 127.0.0.1: ...

  9. MongoDB学习笔记—常用命令

    这里记录一下MongoDB常用的命令 数据库相关 创建数据库 use DATABASE_NAME 如果数据库不存在,则创建数据库,否则切换到指定数据库. 删除数据库:切换到要删除的数据库下,执行命令即 ...

随机推荐

  1. zw版【转发·台湾nvp系列Delphi例程】HALCON SetIcon2

    zw版[转发·台湾nvp系列Delphi例程]HALCON SetIcon2 procedure TForm1.Button1Click(Sender: TObject);var img : HUnt ...

  2. centos7修改hostname

    [root@centos7 ~]$ hostnamectl set-hostname prd_web1 # 使用这个命令会立即生效且重启也生效 [root@centos7 ~]$ hostname # ...

  3. 【运维技术】node项目使用strongloop进行部署相关教程

    node项目使用strongloop进行部署相关教程 安装strongloop 下载安装node 解压到路径完成安装 使用软链方式配置环境变量 添加cnpm的淘宝镜像源 安装node-gyp的模块依赖 ...

  4. 20162326 Exp1《网络对抗技术》 PC平台逆向破解

    1 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程 ...

  5. 【yum】yum的使用

    Yum官网 Yum的缓存 Yum仓库 Yum命令 Yum插件 yum的缓存 通过缓存可以提升我们环境的搭建效率,直接把原来缓存好的安装包数据放到新环境,省去了几个G的下载,甚至,有些时候客户现场不能联 ...

  6. TCP状态迁移

    TCP的状态变迁图 CLOSED:表示初始状态.对服务端和C客户端双方都一样. LISTEN:表示监听状态.服务端调用了listen函数,可以开始accept连接了. SYN_SENT:表示客户端已经 ...

  7. 使用IDEA创建基于Gradle构建的JavaWeb项目

    环境配置 jdk: 1.8 Gradle: 4.4.1 Tomcat: 9.0.0 One Step! 创建项目,初始化项目结构. 打开我们的IDEA,进入创建项目的界面,勾选Java,Web两个选项 ...

  8. CSS 再学习,基础篇

    语法 h1 {color:red; font-size:14px;} 共享声明 h1,h2,h3,h4,h5,h6 { color: green; } 继承 通过 CSS 继承,子元素将继承最高级元素 ...

  9. XML_CPP_资料

    1.TinyXML解析xml文档 - zhoubl668的专栏:远帆,梦之帆! - 博客频道 - CSDN.NET.html http://blog.csdn.net/zhoubl668/articl ...

  10. 2018-2019-2 20165332 《网络对抗技术》Exp4 恶意代码分析

    2018-2019-2 20165332 <网络对抗技术>Exp4 恶意代码分析 原理与实践说明 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分 ...