(一)Redis常用操作命令

(一)Redis常用操作命令

0.1查看redis服务器状态:info

127.0.0.1:20086> info # Server redis_version:3.0.0 #版本号 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:eba5bdca5 redis_mode:sentinel #开启模式 os:Linux 3.16.0-71-generic x86_64 #系统位数 arch_bits:64 multiplexing_api:epoll gcc_version:4.8.2 process_id:2767 #线程ID run_id:319d8c58b9bf26c26ca040b53bdc0764ab tcp_port:20086 #端口 uptime_in_seconds:923 #允许时间 uptime_in_days:0 hz:11 lru_clock: config_file:/etc/redis/sentinel_20086.conf #配置文件 # Sentinel sentinel_masters:1 sentinel_tilt:0 sentinel_running_scripts:0 sentinel_scripts_queue_length:0 master0:name=T1,status=ok,address=127.0.0.1:10087,slaves=2,sentinels=3 #主name,主ip,多少个slave,多少个sentinel

0.1.1.显示所有被监视的redis的master的状态:sentinel masters

127.0.0.1:20086> SENTINEL masters 1) 1) "name" #master name 2) "T1" 3) "ip" #master ip 4) "127.0.0.1" 5) "port" #master port 6) "10087" 7) "runid" 8) "508e7de9f5aa4fdb70126d62a54392fbefc0b11b" 9) "flags" 10) "master" 11) "pending-commands" 12) "0" 13) "last-ping-sent" 14) "0" 15) "last-ok-ping-reply" 16) "261" 17) "last-ping-reply" 18) "261" 19) "down-after-milliseconds" #ping的响应时间 20) "15000" 21) "info-refresh" 22) "620" 23) "role-reported" 24) "master" 25) "role-reported-time" 26) "" 27) "config-epoch" #配置文件版本号 28) "2" 29) "num-slaves" #从的数量 30) "2" 31) "num-other-sentinels" #除本身外还有多少个sentinel 32) "2" 33) "quorum" #投票数量 34) "2" 35) "failover-timeout" #failover超时时间 36) "" 37) "parallel-syncs" #多少个从同步 38) "1"

0.1.2.显示所有被监视的redis的master的slave的状态:sentinel slaves [master_name]

127.0.0.1:20086> sentinel slaves T1

0.1.4.慢查询

和mysql的慢日志分析一样,用来分析redis中一些慢查询操作,slowlog存储在内存中,你可以放心地使用它,不必担心因为开启slow log而损害Redis的速度。,只指一个查询操作的时间,不包括客户端连接、请求、响应的时间

两个参数:

1、slowlog-log-slower-than:预设阀值,即记录超过多少时间的记录,默认为10000微秒,即10毫秒。

2、slowlog-max-len:记录慢查询的条数,默认为128条,当超过设置的条数时最早进入队列的将被移除。线上建议增大数值,如:1000,这样可减少队列移除的频率。

127.0.0.1:6379> config get slowlog-log-slower-than 1) "slowlog-log-slower-than" 2) "10000" 127.0.0.1:6379> config get slowlog-max-len 1) "slowlog-max-len" 2) "128" 慢查询命令: 192.168.10.38:9001> slowlog get (empty list or set) 192.168.10.38:9001> slowlog get 10 (empty list or set) 192.168.10.38:9001> slowlog len (integer) 0 192.168.10.38:9001> slowlog reset OK

0.2.查看连接到服务器的客户端列表:client list

0.3.获取redis的命令数组:command

0.4帮助命令:help [command]

0.5.实时打印出redis服务器接收到的命令,调试用:monitor

1、启动Redis

>./ redis-server [–port 6379]

>./ redis-server [xx/xx/redis.conf]

如果命令参数过多,建议通过配置文件来启动Redis,6379是Redis默认端口号。

2.连接redis

> ./redis-cli [-h 127.0.0.1 -p 6379] 如果设置了密码 $ ./redis-cli -p 9001 -a  或者 auth 

3.停止redis

>./redis-cli shutdown

4.测试联通属性

> ping PONG

5.慎用命令合集

获取所有键

keys *

线上环境慎用,数量少可以,多的话会导致redis锁住和cpu飙升

flushdb:删除redis当前库的所有数据

flushall:删除redis所有库的数据

 save #立即保存数据到硬盘  

bgsave #异步保存数据到硬盘 

可以在redis.conf中添加 rename-command 配置即可达到安全目的。

1)禁用命令

1 2 3 4 
rename-command KEYS "" rename-command FLUSHALL "" rename-command FLUSHDB "" rename-command CONFIG "" 

2)重命名命令

1 2 3 4 
rename-command KEYS "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" rename-command FLUSHALL "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" rename-command FLUSHDB "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" rename-command CONFIG "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 

上面的 XX 可以定义新命令名称,或者用随机字符代替。

6.获取键总数dbsize,获取键总数时不会遍历所有的键,直接获取内部变量,时间复杂度O(1)。

7.查询键是否存在exists key [key …],返回存在的个数

8.删除键del key [key …],返回删除的个数

9.查询键的类型type key

10.移动键move key db

11.查询key的生命周期:秒语法:ttl key,-1:永远不过期。

12.设置过期时间:秒语法:expire key seconds

13.更改键名称rename key newkey

14.获取值的长度strlen key

15.追加内容append key value

16.集合获取所有素smembers key

17.获取集合素个数scard key

18.获取list素个数llen key

19.hash获取所有键和值hgetall key

20.hash获取字段数量hlen key

 

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/117289.html

(0)
上一篇 2024年 6月 20日 13:43
下一篇 2024年 6月 20日 13:51

相关推荐

关注微信