iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >详解redis-cli 命令
  • 121
分享到

详解redis-cli 命令

redis-cli 命令redis-cli  2022-11-13 18:11:26 121人浏览 薄情痞子
摘要

命令使用: Redis-cli [OPTioNS] [cmd [arg [arg ...]]] 选项说明: -h <hostname> Server hos

命令使用:

Redis-cli [OPTioNS] [cmd [arg [arg ...]]]

选项说明:

  -h <hostname>      Server hostname (default: 127.0.0.1). ip地址
  -p <port>          Server port (default: 6379). 服务器端口号
  -s <Socket>        Server socket (overrides hostname and port).
  -a <passWord>      Password to use when connecting to the server. 密码
  -u <uri>           Server URI. url格式的地址
  -r <repeat>        Execute specified command N times.
  -i <interval>      When -r is used, waits <interval> seconds per command.
                     It is possible to specify sub-second times like -i 0.1.
  -n <db>            Database number. 指定数据库
  -x                 Read last argument from STDIN.
  -d <delimiter>     Multi-bulk delimiter in for raw fORMatting (default: \n).
  -c                 Enable cluster mode (follow -ASK and -MOVED redirections).
  --raw              Use raw formatting for replies (default when STDOUT is
                     not a tty).
  --no-raw           Force formatted output even when STDOUT is not a tty.
  --csv              Output in CSV format.
  --stat             Print rolling stats about server: mem, clients, ... 统计数据 连续输出
  --latency          Enter a special mode continuously sampling latency.
                     If you use this mode in an interactive session it runs
                     forever displaying real-time stats. Otherwise if --raw or
                     --csv is specified, or if you redirect the output to a non
                     TTY, it samples the latency for 1 second (you can use
                     -i to change the interval), then produces a single output
                     and exits. 延时统计
  --latency-history  Like --latency but tracking latency changes over time.
                     Default time interval is 15 sec. Change it using -i.
  --latency-dist     Shows latency as a spectrum, requires xterm 256 colors.
                     Default time interval is 1 sec. Change it using -i.
  --lru-test <keys>  Simulate a cache workload with an 80-20 distribution.
  --replica          Simulate a replica showing commands received from the master.
  --rdb <filename>   Transfer an RDB dump from remote server to local file. 导出rdb文件
  --pipe             Transfer raw Redis protocol from stdin to server.
  管道模式
  --pipe-timeout <n> In --pipe mode, abort with error if after sending all data.
                     no reply is received within <n> seconds.
                     Default timeout: 30. Use 0 to wait forever.
                     管道超时
  --bigkeys          Sample Redis keys looking for big keys.
  --hoTKEys          Sample Redis keys looking for hot keys.
                     only works when maxmemory-policy is *lfu.
  --scan             List all keys using the SCAN command.获取服务器所有的键
  --pattern <pat>    Useful with --scan to specify a SCAN pattern.
  正则表达式 用于scan命令中
  --intrinsic-latency <sec> Run a test to measure intrinsic system latency.
                     The test will run for the specified amount of seconds.
  --eval <file>      Send an EVAL command using the lua script at <file>.
  --ldb              Used with --eval enable the Redis Lua debugger.
  --ldb-sync-mode    Like --ldb but uses the synchronous Lua debugger, in
                     this mode the server is blocked and script changes are
                     not rolled back from the server memory.
  --cluster <command> [args...] [opts...]
                     Cluster Manager command and arguments (see below).
  --verbose          Verbose mode.
  --no-auth-warning  Don't show warning message when using password on command
                     line interface.
 

注意:

-u  选项中url格式参考文档https://www.iana.org/assignments/uri-schemes/prov/redis 

格式为:redis://user:secret@localhost:6379/0?foo=bar&qux=baz

举例:

root@hylaz:~# redis-cli
127.0.0.1:6379> set name hylaz
OK
127.0.0.1:6379> quit
root@hylaz:~# redis-cli -h 127.0.0.1
127.0.0.1:6379> get name
"hylaz"
127.0.0.1:6379> select 6
127.0.0.1:6379[6]> 
 
root@hylaz:~# redis-cli -h 127.0.0.1 -p 6379 -n 2
127.0.0.1:6379[2]> get age
 

server中统计选项

root@hylaz:~# redis-cli --stat
------- data ------ --------------------- load -------------------- - child -
keys       mem      clients blocked requests            connections          
11         835.52K  1       0       12 (+0)             5           
11         835.52K  1       0       13 (+1)             5         
11         835.52K  1       0       14 (+1)             5           
11         835.52K  1       0       15 (+1)             5   

列表中选项说明:

选项含义
keysserver中key的数量
mem键值对的总内存量
clients当前连接的总clients数量
blocked当前阻塞的客户端数量
requests服务器请求总次数 (+1) 截止上次请求增加次数
connections服务器连接次数

使用info命令获取服务器的信息

导入rdb文件 命令:redis-cli --rdb rdb.log

root@hylaz:~# redis-cli --rdb rdb.log
SYNC sent to master, writing 344 bytes to 'rdb.log'
Transfer finished with success.

该命令选项实现:

  • 向server发送SYNC命令,返回需要写的总字节数
  • 从server读取总字节数据写到指定文件中

找出各种数据类型的最大键值对 

命令:redis-cli --big-keys

root@hylaz:~# redis-cli --bigkeys
 
# 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 'name1' with 5 bytes
[00.00%] Biggest set    found so far 'myset' with 1 members
[00.00%] Biggest string found so far 'key' with 6 bytes
 
-------- summary -------
 
Sampled 13 keys in the keyspace!
Total key length in bytes is 52 (avg len 4.00)
 
Biggest string found 'key' has 6 bytes
Biggest    set found 'myset' has 1 members
 
12 strings with 33 bytes (92.31% of keys, avg size 2.75)
0 lists with 0 items (00.00% of keys, avg size 0.00)
1 sets with 1 members (07.69% of keys, avg size 1.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)
 

该选项实现:通过使用scan命令遍历server中的键值对,针对不同数据类型进行统计,

找出server中热点key 命令:redis-cli --hotkeys

# Scanning the entire keyspace to find hot 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%] Hot key 'dd' found so far with counter 4
[00.00%] Hot key 'myset' found so far with counter 5
[00.00%] Hot key 'a' found so far with counter 5
[00.00%] Hot key 'dds' found so far with counter 4
[71.43%] Hot key 'aa' found so far with counter 4
[71.43%] Hot key 'key' found so far with counter 4
 
-------- summary -------
 
Sampled 14 keys in the keyspace!
hot key found with counter: 5	keyname: myset
hot key found with counter: 5	keyname: a
hot key found with counter: 4	keyname: dd
hot key found with counter: 4	keyname: dds
hot key found with counter: 4	keyname: aa
hot key found with counter: 4	keyname: key

选项实现:

1. redis实现8种缓存淘汰策略:

voltile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰

volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰

volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰

volatile-lfu: 从已设置过期时间的数据集驱逐使用频率最少的键

allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰

allkeys-lfu: 从所有键中驱逐使用频率最少的键

allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰

no-enviction(驱逐):禁止驱逐数据 当内存不足以容纳新写入数据时,新写入操作会报错

需要设置淘汰策略为lru或者lfu

2. 命令实现使用scan命令遍历所有的键值对,针对每个键值对使用OBJECT freq 获取该键值对的信息

到此这篇关于redis-cli 命令详解的文章就介绍到这了,更多相关redis-cli 命令内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 详解redis-cli 命令

本文链接: http://www.lsjlt.com/news/169533.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 详解redis-cli 命令
    命令使用: redis-cli [OPTIONS] [cmd [arg [arg ...]]] 选项说明: -h <hostname> Server hos...
    99+
    2022-11-13
    redis-cli 命令 redis-cli 
  • redis debug命令详解
    redis debug命令提供了几个非常实用的debug功能,本文介绍下redis下的debug命令。 debug segment 让redis发生段错误,如果开启了cored...
    99+
    2024-04-02
  • Redis SCAN命令详解
    目录1. 获取指定前缀的key需求描述:解决方案:2. SCAN命令Redis Scan 命令用于迭代数据库中的数据库键。 SCAN 命令是一个基于游标的迭代器,每次被调用之后, 都...
    99+
    2024-04-02
  • Vue命令行工具Vue-CLI图文详解(推荐!)
    目录阐述vue全家桶vue-cliVue CLI 的安装① 默认安装 vue/cli 脚手架 3② 默认安装失败,解决mode版本问题③ nvm下载太慢问题解决④ 安装 Node ^...
    99+
    2024-04-02
  • CLI命令有哪些
    这篇文章给大家分享的是有关CLI命令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。wget在类似Unix的操作系统上,wget命令通过网络下载HTTP、HTTPS或FTP服务的文件。默认情况下,它包含在所有...
    99+
    2023-06-05
  • Redis批量删除key的命令详解
    Redis中没有直接根据正则表达式删除key的命令,只有del key1 key2...命令 但是redis中有通过正则表达式获取key的命令:keys "正则表达式" 可以借助于xargs命令实现批...
    99+
    2023-03-23
    Redis批量删除key Redis批量删除
  • 详解redis脚本命令执行问题(redis.call)
    1、redis-cli命令行中执行: # 调用redis命令设置缓存 # 不传参数 eval "return redis.call('set', 'name1', 'Tom')" 0...
    99+
    2024-04-02
  • 详解Redis 键和字符串常用命令
    目录Redis 相关知识Redis中的数据类型redis 键(key)Redis字符串(String)常用命令String的数据结构Redis 相关知识 Redis的默认端口号为63...
    99+
    2024-04-02
  • 详解Redis基本命令与使用场景
    目录Redis和Memcached对比基本命令场景1:统计每个用户的登录天数场景2:电商网站派发礼物更多命令通过管道连接Redis发送命令发布/订阅功能Redis的事务为什么 Red...
    99+
    2024-04-02
  • Redis事务涉及的watch、multi等命令详解
    Redis Watch 命令 作用:  用于监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。  用法: redis 127....
    99+
    2024-04-02
  • Redis 布隆过滤器命令的使用详解
    目录一、Docker 安装 Redis 布隆过滤器学习历史重要原因之一,就是要学会感恩,因为我们都是站在巨人的肩膀上。1.1、安装注意:1.2、测试二、RedisBloom 命令讲解...
    99+
    2024-04-02
  • Linux命令详解(15)lsof命令
    lsof 是 linux 下的一个非常实用的系统级的监控、诊断工具。它是 List Open Files的缩写。 使用 lsof,你可以获取任何被打开文件的各种信息,因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身...
    99+
    2023-09-02
    服务器 运维 lsof
  • Linux命令详解(14)useradd命令
    useradd用于添加一个linux账户。adduser跟本命令等价。 useradd同样属于不复杂但很重要的命令。 --help获得帮助信息。 -b选项,制定家目录的根  -c选项,给新用户添加说明信息 -d选项,给新用户设置家目录 ...
    99+
    2023-08-31
    linux 运维 服务器
  • netstat命令详解
    netstat命令详情 一、前言二、netstat查看端口命令三、显示每个协议的统计信息四、显示核心路由信息五、netstat的其他参数 一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡,小伙伴们,让我们一起来学习nets...
    99+
    2023-08-30
    网络 tcp/ip 服务器 netstat
  • nohup命令详解
    nohup命令详解 一、背景说明: 启动服务的时候,如果使用如下命令,则会在start.sh脚本所在的目录下,产生一个名为 nohup.out 的输出文件 nohup ./startup.sh & 可以看到下面这个例子,一开始当前...
    99+
    2023-09-02
    java shell nohup Powered by 金山文档
  • iscsiadm命令详解
    iscsiadm是一个用于管理iSCSI设备的命令行工具。它可以用于发现iSCSI目标、登录iSCSI设备、配置iSCSI设备和管理...
    99+
    2023-09-28
    iscsiadm
  • RMAN命令详解
    这篇文章主要讲解了“RMAN命令详解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“RMAN命令详解”吧! 1 列出对应物  R...
    99+
    2024-04-02
  • ipconfig命令详解
    ipconfig命令是在Windows操作系统中用于显示和修改网络配置信息的命令行工具。通过ipconfig命令,可以获取计算机的I...
    99+
    2023-09-20
    ipconfig
  • iostat 命令详解
    iostat 命令详解 语法参数详解返回值详解avg-cpu 段Device 段-x 参数的扩展值 性能分析I/O瓶颈内存不足CPU资源不足IOPS 计算吞吐量 计算 示例参考文章 ...
    99+
    2023-09-02
    服务器 运维 linux
  • 详解SFTP命令
    目录SFTP命令一、介绍二、使用SFTP进行连接三、连接参数详解四、目录管理五、传输文件5.1 从远程服务器拉取文件5.2 从本地上传文件到服务器六、最佳实践SFTP命令 一、介绍 ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作