博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis日常命令总结
阅读量:2430 次
发布时间:2019-05-10

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

key

  • keys

    查找所有符合给定模式 pattern 的 key,支持glob风格匹配
    ? 匹配一个字符
    * 匹配任意个(包括0个)字符
    [] 匹配括号间的任一个字符,可以使用 “-” 符号表示一个范围,如 a[b-d] 可以匹配 “ab”,”ac”,”ad”
    \x 匹配字符x,用于转义符号,如果要匹配 “?” 就需要使用 \?
    例:

    redis> MSET one 1 two 2 three 3 four 4  # 一次设置 4 个 keyOKredis> KEYS *o*1) "four"2) "two"3) "one"redis> KEYS t??1) "two"redis> KEYS t[w]*1) "two"redis> KEYS *  # 匹配数据库内所有 key1) "four"2) "three"3) "two"4) "one"
  • exists

    判断某个key是否存在
    命令格式:exists key
    例:

    127.0.0.1:6379> EXISTS key1(integer) 0
  • type

    查看key的数据类型
    命令格式:type key
    例:

    127.0.0.1:6379> set str "hello"OK127.0.0.1:6379> type strstring
  • rename

    为key重命名
    命令格式:rename key newkey
    例:

    127.0.0.1:6379> set str "hello"OK127.0.0.1:6379> RENAME str str_newOK127.0.0.1:6379> get str_new"hello"
  • randomkey

    随机返回一个key
    命令格式:randomkey
    例:

    127.0.0.1:6379> RANDOMKEY"c"
  • del

    删除key
    命令格式:del key
    例:

    127.0.0.1:6379> del c (integer) 1

配置

  • config get

    查询配置
    命令格式:config get parameter (parameter指配置名)
    例:

    127.0.0.1:6379> CONFIG GET *  #获取所有配置 1) "dbfilename" 2) "dump.rdb" 3) "requirepass" 4) "" 5) "masterauth" 6) "" 7) "cluster-announce-ip" 8) "" 9) "unixsocket"10) ""
  • config set

    修改配置
    命令格式:config set parameter value (parameter指配置名,value指新值)
    例:

    127.0.0.1:6379> CONFIG get masterauth 1) "masterauth"2) ""127.0.0.1:6379> CONFIG set masterauth  12345OK127.0.0.1:6379> CONFIG get masterauth 1) "masterauth"2) "12345"

数据库

redis默认有0到15一共16个数据库,每个数据库拥有独立的key独立的命名空间。

  • dbsize

    查看数据库key数量
    命令格式:dbsize
    例:

    127.0.0.1:6379> DBSIZE                               (integer) 4
  • select

    切换数据库
    命令格式:select index (index为数据库号)
    例:

    127.0.0.1:6379> SELECT 1OK127.0.0.1:6379[1]>
  • flushall

    清空所有数据库
    命令格式:flushall
    例:

    127.0.0.1:6379> FLUSHALLOK
  • flushdb

    清空当前数据库
    命令格式:flushdb
    例:

    127.0.0.1:6379> FLUSHDBOK
  • move

    移动数据key到另一个数据库
    命令格式:move key index (index为目标数据库)
    例:

    127.0.0.1:6379> MOVE one 1(integer) 1127.0.0.1:6379> SELECT 1OK127.0.0.1:6379[1]> KEYS * 1) "one"

服务状态

  • ping

    测试client与server的连通性,如连接正常会返回pong
    命令格式:ping
    例:

    127.0.0.1:6379> ping  PONG
  • info

    查看服务器信息,包括CPU,内存,复制,持久化等信息。
    命令格式:info
    例:

    127.0.0.1:6379> INFO# Serverredis_version:4.0.9redis_git_sha1:00000000# Clientsconnected_clients:1# Memoryused_memory:848384used_memory_human:828.50Kused_memory_rss:4759552used_memory_rss_human:4.54M# Persistenceloading:0rdb_changes_since_last_save:5rdb_bgsave_in_progress:0# Statstotal_connections_received:3total_commands_processed:23instantaneous_ops_per_sec:0total_net_input_bytes:1187total_net_output_bytes:31491# Replicationrole:masterconnected_slaves:0master_replid:201f27ab290b092d11da749fb7b50ef31c9bd13b# Serverredis_version:4.0.9redis_git_sha1:00000000redis_git_dirty:0redis_build_id:c946d801634fe2f1
  • shutdown

    关闭redis
    命令格式:shuown
    例:

    127.0.0.1:6379> SHUTDOWNnot connected>

原生监控

为了方便定位故障,redis提供了原生监控命令。

  • 当前链接的客户端数和连接数

    redis-cli –stat查看当前连接的客户端数,连接数等。

    ------- data ------ --------------------- load -------------------- - child -keys       mem      clients blocked requests            connections          4          829.79K  1       0       0 (+0)              1           4          829.79K  1       0       1 (+0)              1           4          829.79K  1       0       2 (+1)              1           4          829.79K  1       0       3 (+1)              1           4          829.79K  1       0       4 (+1)              1           4          829.79K  1       0       5 (+1)              1           4          829.79K  1       0       6 (+1)              1           4          829.79K  1       0       7 (+1)              1           4          829.79K  1       0       8 (+1)              1           4          829.79K  1       0       9 (+1)              1           4          829.79K  1       0       10 (+1)             1
  • 内存最大的键值和平均的键值数据

    redis-cli –bigkeys 查看当前占用内存最大的键值和平均的键值数据,也可以通过指定-i参数定时查看当前的视图情况。

    # Scanning the entire keyspace to find biggest keys as well as# average sizes per key type.  You can use -i 0.1 to sleep 0.1 sec# per 100 SCAN commands (not usually needed).[00.00%] Biggest string found so far 'b' with 1 bytes[00.00%] Biggest string found so far 'str' with 5 bytes-------- summary -------Sampled 4 keys in the keyspace!Total key length in bytes is 6 (avg len 1.50)Biggest string found 'str' has 5 bytes4 strings with 8 bytes (100.00% of keys, avg size 2.00)0 lists with 0 items (00.00% of keys, avg size 0.00)0 sets with 0 members (00.00% of keys, avg size 0.00)0 hashs with 0 fields (00.00% of keys, avg size 0.00)0 zsets with 0 members (00.00% of keys, avg size 0.00)0 streams with 0 entries (00.00% of keys, avg size 0.00)
  • 查看当前的键值情况

    redis-cli –scan提供和keys *相似的功能,查看当前的键值情况。

    root@ubuntu:/home/chenli# redis-cli --scanbadstr
  • 原生的Monitor监控

    redis-cli monitor打印出所有sever接收到的命令以及其对应的客户端地址。

    root@ubuntu:/home/chenli# redis-cli monitor           │connected_slaves:0OK                                                    │master_replid:8bd6c5d16383bc44ee54b05e50f8196de9711d31530380321.325409 [0 127.0.0.1:44484] "ping"          │c1530380326.702314 [0 127.0.0.1:44484] "info"

总结

本文简单的总结了日常工作可能经常使用的命令,当然随着redis版本的迭代,部分命令可能会有变化。面对不同的版本时可以通过多查看官方文档或者使用help命令以及自动补全等来帮助我们。

转载地址:http://mwjmb.baihongyu.com/

你可能感兴趣的文章
一年参加一次就够,全新升级的 AI 开发者大会议程出炉!
查看>>
基于 XDanmuku 的 Android 性能优化实战
查看>>
基于嵌入式操作系统的物联网安全
查看>>
一个只有 99 行代码的 JS 流程框架
查看>>
移动周刊第 186 期:移动 App 客户端性能优化、iOS 开源库源码解析
查看>>
包学会之浅入浅出 Vue.js:开学篇
查看>>
JavaScriptCore 全面解析 (上篇)
查看>>
移动周刊第 187 期:App 模块化实战经验总结
查看>>
以不一样的视角看物联网协议
查看>>
JavaScriptCore全面解析 (下篇)
查看>>
嵌入式操作系统与物联网演进之路
查看>>
苹果公司揭秘首批列入 Swift 源代码兼容性开源项目清单
查看>>
Python 玩转物联网之 Micropython GPIO IRQ 处理
查看>>
移动周刊第 188 期:Android 安全性要点与规范核心详析
查看>>
手机为基础的 IoT 布局已经失效,下一代操作系统是什么模样?
查看>>
无线传感器网络使用指南
查看>>
Unity 脚本优化的那些坑
查看>>
《近匠》专访机智云 CTO 刘琰——从 0 到 1 开启智能化硬件开发
查看>>
深度对话微软,解读 HoloLens 技术设计细节
查看>>
移动周刊第 191 期:如何看待 Kotlin 成为 Android 官方支持开发语言?
查看>>