日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis:13--常用功能之redis-cli redis-server等命令

發布時間:2023/12/13 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis:13--常用功能之redis-cli redis-server等命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • Redis提供了redis-cli、redis-server、redis-benchmark等Shell工具。它們 雖然比較簡單,但是麻雀雖小五臟俱全,有時可以很巧妙地解決一些問題

一、redis-cli

  • 在前面數據庫連接的時候已經redis-cli的-h、-p參數,除了這些參數,還有很多有用的參數,要了解redis-cli的全部參數,可以執行redis-cli-help命令來進行查看

  • 下面將對一些重要參數的含義以及使用場景進行說明

-x

  • -x選項代表從標準輸入(stdin)讀取數據作為redis-cli的最后一個參數

  • 例如下面的操作會將字符串world作為set hello的值:

-c

  • -c(cluster)選項是連接Redis Cluster節點時需要使用的

  • -c選項可以防止moved和ask異常,有關Redis Cluster將在后面介紹

-a

  • 如果Redis配置了密碼,可以用-a(auth)選項,有了這個選項就不需要手動輸入auth命令

  • 如果需要redis的“requirepass”配置參數:

  • CONFIG SET requirepass "123456" 可以設置redis的登錄密碼為123456

--scan、--pattern

  • --scan選項和--pattern選項用于掃描指定模式的鍵,相當于使用scan命令

--slave

  • -slave選項是把當前客戶端模擬成當前Redis節點的從節點,可以用來獲取當前Redis節點的更新操作,有關于Redis復制會在后面文章詳細介紹。合理的利用這個選項可以記錄當前連接Redis節點的一些更新操作,這 些更新操作很可能是實際開發業務時需要的數據

  • 注意:ING命令是由于主從復制產生的,后面文章會對主從復制進行介紹

  • 下面開啟第一個客戶端,使用--slave選項,看到同步已完成:

  • 在后側開啟另一個客戶端做一些更新操作,然后左側的第一個客戶端會收到Redis節點的更新操作:

--rdb

  • --rdb選項會請求Redis實例生成并發送RDB持久化文件,保存在本地

  • ?可使用它做持久化文件的定期備份。有關Redis持久化在后面會詳細介紹

--pipe

  • --pipe選項用于將命令封裝成Redis通信協議定義的數據格式,批量發送給Redis執行,有關Redis通信協議將在后面會詳細介紹

  • 例如下面操作 同時執行了set hello world和incr counter兩條命令:

echo -en '*3\r\n$3\r\nSET\r\n$5\r\nhello\r\n$5\r\nworld\r\n*2\r\n$4\r\nincr\r\n$7\r\ncounter\r\n' | redis-cli --pipe

--bigkeys

  • --bigkeys選項使用scan命令對Redis的鍵進行采樣,從中找到內存占用比較大的鍵值,這些鍵可能是系統的瓶頸

--eval

  • --eval選項用于執行指定Lua腳本,有關Lua腳本的使用將在后面會詳細介紹

  • latency有三個選項,分別是--latency、--latency-history、--latency-dist。它們都可以檢測網絡延遲,對于Redis的開發和運維非常有幫助

①--latency

  • 該選項可以測試客戶端到目標Redis的網絡延遲

  • 例如當前拓撲結構如下圖所示。客戶端B和Redis在機房B,客戶端A在機房A,機房A和機房B是跨地區的

  • 客戶端B:

  • 客戶端A:

  • 可以看到客戶端A由于距離Redis比較遠,平均網絡延遲會稍微高一些

②--latency-history

  • --latency的執行結果只有一條,如果想以分時段的形式了解延遲信息, 可以使用--latency-history選項,可以通過-i參數控制間隔時間

③--latency-dist

  • 該選項會使用統計圖表的形式從控制臺輸出延遲統計信息

--stat

  • --stat選項可以實時獲取Redis的重要統計信息,雖然info命令中的統計信 息更全,但是能實時看到一些增量的數據(例如requests)對于Redis的運維 還是有一定幫助的,如下所示:

--raw、--no-raw

  • --no-raw選項是要求命令的返回結果必須是原始的格式,--raw恰恰相反,返回格式化后的結果

  • 在Redis中設置一個中文的value:

  • 如果正常執行get或者使用--no-raw選項,那么返回的結果是二進制格式:

  • 如果使用了--raw選項,將會返回中文:

二、redis-server

--test-memory

  • redis-server除了啟動Redis外,還有一個--test-memory選項。--test-memory可以用來檢測當前操作系統能否穩定地分配指定容量的內存給 Redis,通過這種檢測可以有效避免因為內存問題造成Redis崩潰

  • 例如下面操作檢測當前操作系統能否提供1G的內存給Redis。整個內存檢測的時間比較長,就不顯示圖片了

redis-server --test-memory 1024
  • 當輸出passed this test時說明內存檢測完畢,最后會提示--test-memory只是簡單檢測,如果有質疑可以使用更加專業的內存檢測工具。

  • 通常無需每次開啟Redis實例時都執行--test-memory選項,該功能更偏向于調試和測試,例如,想快速占滿機器內存做一些極端條件的測試,這個功 能是一個不錯的選擇

三、redis-benchmark

  • redis-benchmark可以為Redis做基準性能測試,它提供了很多選項幫助開發和運維人員測試Redis的相關性能,下面分別介紹這些選項

  • 詳情參閱:https://redis.io/topics/benchmarks

-h

  • 指定服務器主機名

  • 默認值127.0.0.1

-p

  • 指定服務器端口

  • 默認值為6379

-s

  • 指定服務器socket

-c

  • -c(clients)選項代表客戶端的并發數量(默認是50)

-n <requests>

  • -n(num)選項代表客戶端請求總量(默認是100000)

  • 例如下面的命令代表100各個客戶端同時請求Redis,一 共執行20000次。redis-benchmark會對各類數據結構的命令進行測試,并給出性能指標:

redis-benchmark -c 100 -n 20000

  • 例如上面一共執行了20000次get操作,在0.81秒完成,每個請求數據量是3個字節,2.44%的命令執行時間小于1毫秒,Redis每秒可以處理24691.36次get請求

-d

  • 以字節的形式指定set/get值的數據大小

  • 默認值為2

-q

  • -q選項僅僅顯示redis-benchmark的requests per second信息

  • 例如,接著上面的演示案例

redis-benchmark -c 100 -n 20000 -q

?

-r

  • 在一個數據庫內容為空的Redis上,執行了redis-benchmark命令之后會發現數據庫中自動新增4個鍵:

  • 如果想向Redis插入更多的鍵,可以執行使用-r(random)選項,可以向Redis插入更多隨機的鍵

redis-benchmark -c 100 -n 20000 -r 10000
  • -r選項會在key、counter鍵上加一個12位的后綴,-r10000代表只對后四位做隨機處理(-r不是隨機數的個數)。例如進行上面的操作后,key的數量和結果結構如下:

-P

  • 通過管道傳輸請求,-P選項代表每個請求pipeline的數據量(默認為1)

-k<boolean>

  • -k選項代表客戶端是否使用keepalive,1為使用,0為不使用,默認值為 1

-t

  • -t選項可以對指定命令進行基準測試

--csv

  • --csv選項會將結果按照csv格式輸出,便于后續處理,如導出到Excel 等

-L

  • 死循環,永久執行測試

-I

  • Idle模式。僅打開N個idle連接并等待

總結

以上是生活随笔為你收集整理的Redis:13--常用功能之redis-cli redis-server等命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。