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[3]> dbsize
(integer) 0

BGREWRITEAOF 後臺進程重寫AOF
[root@localhost redisdb]# ll
total 28912
-rw-r--r-- 1 root root 29600160 May  6 22:08 appendonly_master.aof
-rw-r--r-- 1 root root       80 May  7 05:45 redis_master.db
127.0.0.1:6379[3]> BGREWRITEAOF
Background append only file rewriting started
重寫後的aof:
[root@localhost redisdb]# ll
total 8
-rw-r--r-- 1 root root 153 May  7 06:04 appendonly_master.aof
-rw-r--r-- 1 root root  80 May  7 05:45 redis_master.db

BGSAVE       後臺保存rdb快照
127.0.0.1:6379[3]> BGSAVE
Background saving started
重寫後的rdb文件修改時間:
[root@localhost redisdb]# ll
total 8
-rw-r--r-- 1 root root 153 May  7 06:04 appendonly_master.aof
-rw-r--r-- 1 root root  80 May  7 06:04 redis_master.db

SAVE         保存rdb快照
與bgsave用法一樣,只不過在數據量大的時候不建議使用,改用bgsave

LASTSAVE     上次保存時間戳
127.0.0.1:6379[3]> LASTSAVE
(integer) 1462572342


Flushall  清空所有庫所有鍵
Flushdb  清空當前庫所有鍵
Showdown [save/nosave]  關閉redis

注: 如果不小心運行了flushall, 立即 shutdown nosave ,關閉服務器
然後 手工編輯aof文件, 去掉文件中的 “flushall ”相關行, 然後開啓服務器,就可以導入回原來數據.
[root@localhost redisdb]# 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" [dos] 39L, 217C   
再次重新啓動redis:
[root@localhost redisdb]# redis-server /etc/redis/redis.conf
[root@localhost redisdb]# 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 [Replication/CPU/Memory..]
查看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測試一次:
[root@localhost redisdb]# 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"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章