『壹』 記錄一下redis常用運維命令
語法:[config get xxx]
例如:
同樣的還有config set [屬性] [屬性值] ,給指定屬性值設置參數。
列一下client list中對應的欄位含義:
如果發現idle中對應的值比較高,說明redis的timeout屬性設置有問題。結合config get timeout查看一下超時時間,如果timeout為0,說明已經禁用掉該功能,就有可能導致redis連接數不釋放的問題。
Slow log 的行為由兩個配置參數(configuration parameter)指定,可以通過改寫 redis.conf 文件或者用 CONFIG GET 和 CONFIG SET 命令對它們動態地進行修改。
第一個選項是 slowlog-log-slower-than ,它決定要對執行時間大於多少微秒(microsecond,1秒 = 1,000,000 微秒)的查詢進行記錄。
比如執行以下命令將讓 slow log 記錄所有查詢時間大於等於 100 微秒的查詢:
CONFIG SET slowlog-log-slower-than 100
而以下命令記錄所有查詢時間大於 1000 微秒的查詢:
CONFIG SET slowlog-log-slower-than 1000
另一個選項是 slowlog-max-len ,它決定 slow log 最多能保存多少條日誌, slow log 本身是一個 FIFO 隊列,當隊列大小超首大碼過 slowlog-max-len 時,最舊的一條日誌將被刪除,而最新的一條日誌加入到 slow log ,以此類推。
以下命令讓 slow log 最多保存 1000 條日誌:
CONFIG SET slowlog-max-len 1000
使用 CONFIG GET 命令可以查詢兩個選項的當前值:
查看 slow log
要查看 slow log ,可以使用 SLOWLOG GET 或者 SLOWLOG GET number 命令,前者列印所有 slow log ,最大長度取決於 slowlog-max-len 選項的值,而 SLOWLOG GET number 則只列印指定數仿差量的日誌。
最新的日誌會最先被列印:
為測試需要,將 slowlog-log-slower-than 設成了 10 微秒
日誌的唯一 id 只有在 Redis 伺服器重啟的時候才會重置,這樣可以避免對日誌的重復處理(比如你可能會想在每次發現新的慢查詢時發郵件通知你)。
查看當前日誌的數量
使用命令 SLOWLOG LEN 可以查看當前日誌的數量。
請注意這個值和 slower-max-len 的區別,它們一個是當前日誌的數量,一個是允許記錄的最大日誌的數量。
清空日誌
使用命令 SLOWLOG RESET 可以清空 slow log 。
測試命者哪令事例:
1、redis-benchmark -h 192.168.1.201 -p 6379 -c 100 -n 100000
100個並發連接,100000個請求,檢測host為localhost 埠為6379的redis伺服器性能
2、redis-benchmark -h 192.168.1.201 -p 6379 -q -d 100
測試存取大小為100位元組的數據包的性能
3、redis-benchmark -t set,lpush -n 100000 -q
只測試某些操作的性能
4、redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"
只測試某些數值存取的性能
測試結果分析:
參考文檔: http://www.cnblogs.com/silent2012/p/4514901.html
http://www.runoob.com/redis/server-client-list.html
http://dba10g.blog.51cto.com/764602/1846068
http://blog.csdn.net/cxhgg/article/details/67640263
『貳』 redis啟動,停止
1.直接啟動
進入redis根目錄,執行命令:
#加上『&』號使redis以後台程序方式運行
./redis-server &
2.通過指定配置文件啟動
可以為redis服務啟動指定配置文件,例如配置為/etc/redis/6379.conf
進入redis根目錄,輸入命令:
./redis-server /etc/redis/6379.conf
#如果更改了埠,使用`redis-cli`客戶端連接時,也需要指定埠,例如:
redis-cli -p 6380
後台方式啟動
修改redis.conf,把daemonize no修改成daemonize yes
停止:redis-cli shutdown
查找進程號
ps -ef | grep redis
殺進程
kill -6 pid
redis快照問題錯誤信息如下:
MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.
排查與解決步驟:
進入redis使用info命令查看,會發現最後一次快照失敗的信息
rdb_last_bgsave_status:err
處理方法:
1.進入redis臨時關閉配置(如果需要,要再redis.conf上寫上該配置,不然下次重啟redis配置會失效)
config set stop-writes-on-bgsave-error no
『叄』 linux啟動app命令
linux啟動app命令:做 Linux 嵌入式開發,經常會遇到要設置自己的應用程序在系統開機的時候自動啟動,並且一般情況我們不想安裝一些額外的軟體去實現此種需求。那麼直接根據當前系統自帶的默認的一些工具實現用戶軟體的開機自啟動。
本次測驗的系統環境為 Ubuntu 16.04 LTS,測試內容均得到正確的驗證,如果其他環境出現不一致的現象,請查閱相關的差異。
比如先要實現下面的應用程序的開機自啟動(實現的代碼最下面給出,有需要的可以查看):
1. 應用程序的名稱:app.bin
2. 應用程序的保存路徑:/home/ubuntu/app/ 下
3. 應用程序的工作路徑:/home/ubuntu/app/ 下
『肆』 啟動redis-server之後怎麼停止
安裝redis之後 在命令行窗口中輸入 redis-server redis.windows.conf 啟動redis 關閉命令行窗口就是關閉redis。
Redis(Remote Dictionary Server ),即遠程字典服務,是一個開源的使用ANSIC語言編寫、支持網路、可基於內存亦可持久化的日誌型、Key-Value資料庫,並提供多種語言的API。
從2010年3月15日起,Redis的開發工作由VMware主持。從2013年5月開始,Redis的開發由Pivotal贊助。
定義:
redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字元串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。
在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁碟或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。
『伍』 Redis停止的命令
Redis停止的命令
我的redis是部署在linux機器上的,而且是redis集群。下面的命令都是在linux上使用的。
執行後,輸出的記錄中,含有「redis-server」的行,全是運行的redis服務節點。
「redis-server」所在行的最後,會有「IP:埠號」,執行第3步停止redis集群時要使用。
第一行記錄,都要執行一次停止命令。
2. 進入redis-cli所在目錄
註:如果不知道redis-cli所在目錄,請使用如下命令查找(網上很多的人回答,redis-cli在redis/bin目錄,我的機器卻不是)
3. 停止redis服務,使用的IP、埠號為第1步查看出的IP、埠號。
第一步中的第一行記錄,都要執行一次停止命令。
註:不加「-h IP」參數時,會提示如下內容,停止是失敗的
Could not connect to Redis at 127.0.0.1:XXXX: Connection refused
4. 查看redis服務是否停止成功
執行後,輸出的記錄中,不存在含有「redis-server」的行,則redis服務停止成功。
原文:
YouLuoJv使用知識的小磚壘起質量、效率燈塔,希望可以照亮更多人的路