Redis總結(七)Redis運維常用命令


redis 服務器端命令

redis 127.0.0.1:6380> time  ,顯示服務器時間 , 時間戳(秒), 微秒數

1) "1375270361"

2) "504511"

 

redis 127.0.0.1:6380> dbsize  // 當前數據庫的key的數量

(integer) 2

redis 127.0.0.1:6380> select 2

OK

redis 127.0.0.1:6380[2]> dbsize

(integer) 0

redis 127.0.0.1:6380[2]>

 

 

BGREWRITEAOF 后台進程重寫AOF

BGSAVE       后台保存rdb快照

SAVE         保存rdb快照

LASTSAVE     上次保存時間

 

Slaveof master-Host port  , 把當前實例設為master的slave

 

Flushall  清空所有庫所有鍵

Flushdb  清空當前庫所有鍵

Showdown [save/nosave]

 

注: 如果不小心運行了flushall, 立即 shutdown nosave ,關閉服務器

然后 手工編輯aof文件, 去掉文件中的 “flushall ”相關行, 然后開啟服務器,就可以導入回原來數據.

 

如果,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命令來設置)

 

Redis運維時需要注意的參數

1: 內存

# Memory

used_memory:859192 數據結構的空間

used_memory_rss:7634944 實占空間

mem_fragmentation_ratio:8.89 前2者的比例,1.N為佳,如果此值過大,說明redis的內存的碎片化嚴重,可以導出再導入一次.

2: 主從復制

# Replication

role:slave

master_host:192.168.1.128

master_port:6379

master_link_status:up

 

3:持久化

# Persistence

rdb_changes_since_last_save:0

rdb_last_save_time:1375224063

 

4: fork耗時

#Status

latest_fork_usec:936  上次導出rdb快照,持久化花費微秒

注意: 如果某實例有10G內容,導出需要2分鍾,

每分鍾寫入10000次,導致不斷的rdb導出,磁盤始處於高IO狀態.

 

 

5: 慢日志

config get/set slowlog-log-slower-than

CONFIG get/SET slowlog-max-len

slowlog get N 獲取慢日志

 

運行時更改master-slave

修改一台slave(設為A)為new master

1) 命令該服務不做其他redis服務的slave

   命令: slaveof no one

2) 修改其readonly為yes

 

其他的slave再指向new master A

1) 命令該服務為new master A的slave

   命令格式 slaveof IP port


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM