Redis系列(八)、常用服務器命令

目錄

進入命令行模式

校驗連接狀態

驗證密碼是否正確

查看服務器信息

統計當前庫下key的數量

配置

查看配置信息

修改當前配置信息

重寫配置文件

重置統計信息

切換數據庫

獲取當前時間

DEBUG

ACL(access control list)

數據持久化

異步AOF重寫

同步RDB持久化數據到磁盤

異步RDB持久化數據到磁盤

查看上次RDB持久化時間

查看當前Redis中所有可用命令

清空庫

監控

關閉服務器

彩蛋


前面介紹了Redis的五種數據類型以及鍵命令,本篇介紹一些常用的Redis服務器命令,Redis 服務器命令主要是用於管理 redis 服務。文末有彩蛋~

Redis系列文章:

Redis系列(一)、CentOS7下安裝Redis6.0.3穩定版

Redis系列(二)、數據類型之字符串String 

Redis系列(三)、數據類型之哈希Hash

Redis系列(四)、數據類型之列表List

Redis系列(五)、數據類型之無序集合Set

Redis系列(六)、數據類型之有序集合ZSet(sorted_set)

Redis系列(七)、常用key命令


進入命令行模式

redis-cli -a password_value
 
redis-cli -a password_value --raw
#raw 避免中文顯示亂碼

redis-cli --user default -a 123456 --raw
#指定用戶名密碼登錄,redis6新增ACL,後面會單開一個文章關於ACL

校驗連接狀態

PING
#如果連接成功返回PONG,連接失敗返回錯誤信息

 

驗證密碼是否正確

 使用auth命令驗證密碼是否正確,如果當前未登陸進行驗證通過後會轉爲登陸狀態,如果當前已登陸,會返回驗證結果成功或失敗:

auth password

查看服務器信息

INFO [section]

 

統計當前庫下key的數量

dbsize

配置

查看配置信息

config get patten

修改當前配置信息

Config Set 命令可以動態地調整 Redis 服務器的配置(configuration)而無須重啓,但此時配置文件中仍是修改前的配置,可搭配config rewrite命令一起使用:

CONFIG SET parameter value

重寫配置文件

Config rewrite 命令對啓動 Redis 服務器時所指定的 redis.conf 配置文件進行改寫。與config set不同,set之後會將配置信息修改而無需重啓服務,但此時redis.conf配置文件裏記錄的參數仍是set之前的值,如果將redis服務重啓後會讀取conf文件中的配置,這時候讀到的還是set之前的配置,因此我們可以在set配置之後使用rewrite命令將當前的配置回寫至配置文件內,這樣就能不停機修改配置信息了,因此config set和config rewrite是配合使用的:

CONFIG REWRITE

 

重置統計信息

使用Config Resetstat 命令重置 INFO 命令中的某些統計數據,包括:

  • Keyspace hits (鍵空間命中次數)
  • Keyspace misses (鍵空間不命中次數)
  • Number of commands processed (執行命令的次數)
  • Number of connections received (連接服務器的次數)
  • Number of expired keys (過期key的數量)
  • Number of rejected connections (被拒絕的連接數量)
  • Latest fork(2) time(最後執行 fork(2) 的時間)
  • The aof_delayed_fsync counter(aof_delayed_fsync 計數器的值)
CONFIG RESETSTAT

切換數據庫

redis共有16個db,從db0~db15,使用select index命令在數據庫之間進行切換:

select index

獲取當前時間

Time 命令用於返回當前服務器時間,返回一個包含兩個字符串的列表: 第一個字符串是當前時間(以 UNIX 時間戳格式表示),而第二個字符串是當前這一秒鐘已經逝去的微秒數。

time

 

DEBUG

debug object key獲取 key 的調試信息,當key不存在時返回錯誤信息。

debug segfault 命令執行一個非法的內存訪問從而讓 Redis 崩潰,僅在開發時用於 BUG 調試,執行後需要重啓服務。

debug object key
debug segfault 

 

ACL(access control list)

ACL是Redis6之後新增的功能,也是千呼萬喚始出來,[對於Redis中ACL的使用因內容較多請關注後面的文章會單獨介紹]

數據持久化

異步AOF重寫

執行一個異步的AOF(append only file)文件重寫,[關於AOF和RDB後面的文章中會單開一篇介紹]

BGREWRITEAOF 

同步RDB持久化數據到磁盤

同步地將redis中的數據持久化到磁盤:

save

異步RDB持久化數據到磁盤

異步將redis中的數據持久化到磁盤:

BGSAVE

查看上次RDB持久化時間

使用lastsave命令查看上次持久化到磁盤的時間:

lastsave

查看當前Redis中所有可用命令

使用Command 命令用於返回所有的Redis命令的詳細信息,以數組形式展示:

command

使用command count命令查看當前Redis中命令的數量:

command count

使用command info命令查看當前Redis中指定的命令的詳細信息:

COMMAND INFO command-name [command-name ...]

清空庫

flushdb清空當前數據庫下的所有數據。

flushall清空所有庫下的所有數據。

flushdb
flushall

監控

monitor命令用於監聽redis服務器接收到的所有命令:

monitor

關閉服務器

異步的將數據持久化到磁盤後關閉服務器:

SHUTDOWN [NOSAVE|SAVE]

彩蛋

Redis5之後新增的彩蛋,使用LOLWUT命令即可返回一副隨機圖像以及當前redis的版本信息。事實上LOLWUT沒有任何作用,但它想告訴我們的是:"編程不僅僅是把一些代碼放在一起創建有用的東西,也可以是無用但有趣的。"

LOLWUT

像其他還有client命令,主備同步命令會在後面的篇幅有更詳細的介紹,在本篇內就不一一列舉了。

希望本文對你有幫助,請點個贊鼓勵一下作者吧~ 謝謝!

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