sher 发表于 2018-11-5 10:02:47

Redis简单运维命令介绍

  time显示服务器时间 , 时间戳(秒), 微秒数
  127.0.0.1:6379> TIME
  1) "1462572140"
  2) "564061"
  dbsize// 当前数据库的key的数量
  127.0.0.1:6379> dbsize
  (integer) 3
  切换到其它db后就不同结果了
  127.0.0.1:6379> select 3
  OK
  127.0.0.1:6379> dbsize
  (integer) 0
  BGREWRITEAOF 后台进程重写AOF
  # ll
  total 28912
  -rw-r--r-- 1 root root 29600160 May6 22:08 appendonly_master.aof
  -rw-r--r-- 1 root root       80 May7 05:45 redis_master.db
  127.0.0.1:6379> BGREWRITEAOF
  Background append only file rewriting started
  重写后的aof:
  # ll
  total 8
  -rw-r--r-- 1 root root 153 May7 06:04 appendonly_master.aof
  -rw-r--r-- 1 root root80 May7 05:45 redis_master.db
  BGSAVE       后台保存rdb快照
  127.0.0.1:6379> BGSAVE
  Background saving started
  重写后的rdb文件修改时间:
  # ll
  total 8
  -rw-r--r-- 1 root root 153 May7 06:04 appendonly_master.aof
  -rw-r--r-- 1 root root80 May7 06:04 redis_master.db
  SAVE         保存rdb快照
  与bgsave用法一样,只不过在数据量大的时候不建议使用,改用bgsave
  LASTSAVE   上次保存时间戳
  127.0.0.1:6379> LASTSAVE
  (integer) 1462572342
  Flushall清空所有库所有键
  Flushdb清空当前库所有键
  Showdown 关闭redis
  注: 如果不小心运行了flushall, 立即 shutdown nosave ,关闭服务器
  然后 手工编辑aof文件, 去掉文件中的 “flushall ”相关行, 然后开启服务器,就可以导入回原来数据.
  # redis-cli
  127.0.0.1:6379> keys *
  (error) NOAUTH Authentication required.
  127.0.0.1:6379> auth Passw0rd
  OK
  127.0.0.1:6379> keys *
  1) "key:__rand_int__"
  2) "counter:__rand_int__"
  3) "db"
  127.0.0.1:6379> FLUSHALL
  OK
  127.0.0.1:6379> keys *
  (empty list or set)
  127.0.0.1:6379> SHUTDOWN nosave
  not connected> exit
  编辑aof文件,把最后一行的flushall去掉:
  $8
  FLUSHALL
  "appendonly_master.aof" 39L, 217C
  再次重新启动redis:
  # redis-server /etc/redis/redis.conf
  # redis-cli
  127.0.0.1:6379> auth Passw0rd
  OK
  127.0.0.1:6379> keys *
  1) "db"
  2) "key:__rand_int__"
  3) "counter:__rand_int__
  如果,flushall之后,系统恰好bgrewriteaof了,那么aof就清空了,数据丢失.
  Slowlog 显示慢查询
  注:多慢才叫慢?
  答: 由slowlog-log-slower-than 10000 ,来指定,(单位是微秒)
  服务器储存多少条慢查询的记录?
  答: 由 slowlog-max-len 128 ,来做限制
  Info
  查看redis服务器的信息
  Config get 配置项
  Config set 配置项 值 (特殊的选项,不允许用此命令设置,如slave-of, 需要用单独的slaveof命令来设置)
  127.0.0.1:6379> CONFIG GET slowlog-log-slower-than
  1) "slowlog-log-slower-than"
  2) "10000"
  配置slowlog
  127.0.0.1:6379> CONFIG SET slowlog-log-slower-than 100
  OK
  再利用benchmark测试一次:
  # redis-benchmark -a Passw0rd -n 200000
  127.0.0.1:6379> SLOWLOG get
  1) 1) (integer) 163
  2) (integer) 1462572873
  3) (integer) 102
  4) 1) "LPUSH"
  2) "mylist"
  3) "xxx"
  2) 1) (integer) 162
  2) (integer) 1462572873
  3) (integer) 178
  4) 1) "LPUSH"
  2) "mylist"
  。。。。
  现在就与slowlog了,可以获取指定的slowlog:
  127.0.0.1:6379> SLOWLOG get 3
  1) 1) (integer) 920
  2) (integer) 1462572912
  3) (integer) 101
  4) 1) "LRANGE"
  2) "mylist"
  3) "0"
  4) "449"
  2) 1) (integer) 919
  2) (integer) 1462572912
  3) (integer) 171
  4) 1) "LRANGE"
  2) "mylist"
  3) "0"
  4) "449"
  3) 1) (integer) 918
  2) (integer) 1462572912
  3) (integer) 130
  4) 1) "LRANGE"
  2) "mylist"
  3) "0"
  4) "449"

页: [1]
查看完整版本: Redis简单运维命令介绍