標籤:資料庫 字串 元素
Redis系統管理實驗簡介
上一節實驗講述了Redis的基礎資料型別 (Elementary Data Type),本實驗繼續講解Redis相關命令及管理操作。
在Redis中,命令大小寫不敏感。
一、適合全體類型的常用命令(1)EXIT and DEL
EXISTS key 判斷一個key是否存在;存在返回 1;否則返回0; DEL key 刪除某個key,或是一系列key;DEL key1 key2 key3 key4。成功返回1,失敗返回0(key值不存在)。
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/11/wKioL1Wwx7nDIwc0AAFsMvzrgoA490.jpg" title="14.png" alt="wKioL1Wwx7nDIwc0AAFsMvzrgoA490.jpg" />
(2)TYPE and KEYS
TYPE key:返回某個key元素的資料類型 ( none:不存在,string:字元,list,set,zset,hash),key不存在返回空。 KEYS key—pattern :返回匹配的key列表 (KEYS foo*:尋找foo開頭的keys)
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/14/wKiom1WwxefRPHXlAAK2fiwWG5g885.jpg" title="15.png" alt="wKiom1WwxefRPHXlAAK2fiwWG5g885.jpg" />
(3)RANDOMKEY and CLEAR
RANDOMKEY : 隨機獲得一個已經存在的key,如果當前資料庫為空白,則返回Null 字元串
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/11/wKioL1Wwx9zxxXNjAAEqxi5vngU915.jpg" title="16.png" alt="wKioL1Wwx9zxxXNjAAEqxi5vngU915.jpg" />
(4)RENAME and RENAMENX
RENAME oldname newname:改key的名字,新鍵如果存在將被覆蓋 RENAMENX oldname newname:更改key的名字,如果名字存在則更改失敗
筆者randomkey結果為mylist,將此key值更名為newlist。
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/14/wKiom1WwxgKh1nT8AAHX886v3ns433.jpg" title="17.png" alt="wKiom1WwxgKh1nT8AAHX886v3ns433.jpg" />
(5) DBSIZE
DBSIZE :返回當前資料庫的key的總數
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/11/wKioL1Wwx_KQu_5KAACecsVDsDQ281.jpg" title="18.png" width="500" height="140" border="0" hspace="0" vspace="0" style="width:500px;height:140px;" alt="wKioL1Wwx_KQu_5KAACecsVDsDQ281.jpg" />
二、Redis 時間相關命令(1)限定key存留時間
這同樣是一個無視資料類型的命令,對於臨時儲存很有用處。避免進行大量的DEL操作。
EXPIRE:設定某個key的到期時間(秒),(EXPIRE bruce 1000:設定bruce這個key1000秒後系統自動刪除)注意:如果在還沒有到期的時候,對值進行了改變,那麼那個值會被清除。650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/14/wKiom1WwxhfTmgqAAAGDp6m0x_Y185.jpg" title="19.png" alt="wKiom1WwxhfTmgqAAAGDp6m0x_Y185.jpg" />
結果顯示,執行EXPIRE命令後,馬上GET,顯示key存在。10秒後再GET時,key 已經被自動刪除。
(2)查詢key剩餘存留時間
限時操作可以再SET命令中實現,並且可用TTL命令查詢key剩餘存留時間。 TTL:尋找某個key還有多長時間到期,返回時間秒
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/11/wKioL1WwyAfAUX4TAAF47J0gcD4830.jpg" title="20.png" alt="wKioL1WwyAfAUX4TAAF47J0gcD4830.jpg" />
(3)清除key
FLUSHDB:清空當前資料庫中的所有鍵
FLUSHALL:清空所有資料庫中的所有鍵
三、Redis設定相關命令
Redis有其設定檔,可以通過client-command視窗查看或者更改相關配置。相關命令介紹如下:
(1)CONFIG GET and CONFIG SET
CONFIG GET:用來讀取運行Redis伺服器的配置參數。 CONFIG SET:用於更改運行Redis伺服器的配置參數。 AUTH : 認證密碼 下面針對Redis密碼的樣本:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/14/wKiom1WwxirwNwDSAAK5kGT_ThU636.jpg" title="21.png" alt="wKiom1WwxirwNwDSAAK5kGT_ThU636.jpg" />
由結果可知,剛開始時Reids並未設定密碼,密碼查詢結果為空白。然後設定密碼為test123,重新查詢報錯。經過auth命令認證後,可正常查詢。
可以經過修改Redis的設定檔redis.conf修改密碼。
CONFIG GET命令是以list的key-value對顯示的,如查詢資料類型的最大條目:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/11/wKioL1WwyBmRHtwSAAHtB-Xn9J4024.jpg" title="22.png" alt="wKioL1WwyBmRHtwSAAHtB-Xn9J4024.jpg" />
(2)重設報告
CONFIG RESETSTAT:重設資料統計報告,通常傳回值為‘OK"。
四、查詢資訊
INFO [section] :查詢Redis相關資訊。 INFO命令可以查詢Redis幾乎所有的資訊,其命令選項有如下:
1. server: Redis server的常規資訊
2. clients: Client的串連選項
3. memory: 儲存佔用相關資訊
4. persistence: RDB and AOF 相關資訊
5. stats: 常規統計
6. replication: Master/slave請求資訊
7. cpu: CPU 佔用資訊統計
8. cluster: Redis 叢集資訊
9. keyspace: 資料庫資訊統計
10. all: 返回所有資訊
11. default: 返回常規設定資訊
若命令參數為空白,info命令返回所有資訊。
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/14/wKiom1WwxjzBkvc0AAPjTUiQO5Q750.jpg" title="23.png" alt="wKiom1WwxjzBkvc0AAPjTUiQO5Q750.jpg" />
參考文檔
http://redis.io/commands/config-resetstat
Redis系統管理