導航:首頁 > 程序命令 > redis操作命令大全

redis操作命令大全

發布時間:2025-02-06 05:31:16

❶ Redis命令詳解:Keys

Redis命令詳解:Keys


介紹完Redis連接相關命令後,我們接下來將重點介紹與Key相關的命令。Redis作為一款key-value資料庫,對Key的操作是不可或缺的。接下來,我們將逐一解析與Key操作相關的Redis命令。


DEL:最早可用版本為1.0.0。用於刪除指定的鍵值對。若指定的key不存在,則忽略。命令時間復雜度為O(N)。對於除字元串外的其他數據類型,命令的時間復雜度為O(M),M為值的元素個數。在生產環境中,應避免一次性刪除過多復雜數據類型的操作。


DUMP:最早可用版本為2.6.0。用於以Redis格式序列化指定鍵存儲的值,可用RESTORE命令將序列化值反序列化。序列化格式有以下3個特點:不包含過期時間信息,使用PTTL命令獲取存活時間;訪問時間復雜度為O(1),序列化值時間復雜度為O(N*M),N為組成值的元素數量,M為元素平均大小;序列化較短字元串時,時間復雜度可看做O(1)。


EXISTS:最早可用版本為1.0.0。用於判斷key是否存在。自3.0.3版本後,支持多參數,即一次性判斷多個key,返回存在的key數量。單個key存在的判斷返回1或0,向後兼容。注意,參數中有重復存在命令時,返回結果不進行去重。


EXPIRE:最早可用版本為1.0.0。用於為指定的key設置存活時間。存活時間會被DEL、SET、GETSET和所有STORE命令刪除或覆蓋。修改key值而不修改存活時間或保存到新key中,key的存活時間保持不變。使用RENAME重命名key時,原有key的存活時間會賦給新key。使用PERSIST命令清除存活時間,將key變為永久。如果設置存活時間非正數或過期時間,則key直接被刪除。再次設置存活時間更新key的存活時間,在應用中常見。


關於時間精度,Redis2.1.3版本之前修改帶有存活時間的key值時,會刪除整個key;2.4版本後,過期時間在key過期一秒內仍可訪問,2.6版本精確到1毫秒。存活時間保存為Unix時間戳,要求計算機時間可靠,載入RDB文件到另一台機器時,時間差距可能導致key被刪除或存活時間延長。


Redis過期策略有兩種:被動過期和主動過期。被動過期在客戶端訪問時檢查key的存活時間,可能無法及時發現長時間未訪問的過期key。Redis定期隨機檢查被設置過存活時間的key,過期後及時清理。每秒執行10次檢查操作。


EXPIREAT:最早可用版本為1.2.0。作用與EXPIRE相同,參數需要傳Unix時間戳。


KEYS:最早可用版本為1.0.0。返回匹配所有key的命令,時間復雜度為O(N)。在官方文檔中建議避免在生產環境中使用,尤其是不要使用KEYS *命令,以免導致生產環境長時間不可用。推薦使用SCAN或sets命令查找key。


匹配策略介紹:?匹配單個字元,*匹配任意數量字元,[ae]匹配a或e,^e不匹配e,a-c匹配a、b、c,特殊符號使用隔開。


MIGRATE:最早可用版本為2.6.0。將源實例的key以原子操作傳輸到目標實例,刪除源實例key。相當於執行DUMP+DEL操作在目標實例執行RESTORE操作。此操作會阻塞源實例和目標實例,直到傳輸完成。3.2版本後支持一次性傳輸多個key。


執行MIGRATE命令時需設置超時時間,超時未完成拋出IOERR。兩個實例狀態可能兩種:均存在指定key或僅源實例存在,key不會丟失。3.0.6版本後支持一次傳輸多個key,使用KEYS參數,源key參數設置為空字元串。COPY參數傳輸後不刪除源實例key,REPLACE參數替換目標實例已存在的key。這兩個參數自3.0版本開始可用。


MOVE:最早可用版本為1.0.0。將當前資料庫key移動到指定資料庫。如果目標資料庫已存在key或當前資料庫不存在key,命令不做任何操作。


OBJECT:最早可用版本為2.2.3。用於查看Redis對象內部信息,調試時常用。具體用法如下:查看對象編碼格式。


PERSIST:最早可用版本為2.2.0。刪除指定key的過期時間,使之變為永久key。


PEXPIRE:最早可用版本為2.6.0。與EXPIRE作用相同,參數時間單位為毫秒。


PEXPIREAT:最早可用版本為2.6.0。與EXPIREAT作用相同,參數同樣是毫秒。


PTTL:最早可用版本為2.6.0。返回指定key剩餘存活時間的毫秒數。3.0版本後,key不存在返回-2,永久key返回-1。


RANDOMKEY:最早可用版本為1.0.0。從當前資料庫返回一個隨機key。


RENAME:最早可用版本為1.0.0。重命名key。若key不存在,返回錯誤。新key已存在時,覆蓋原key(隱式執行DEL命令,操作延時較高)。3.2版本前,源key和目標key相同會報錯。


RENAMENX:若新key不存在,則重命名key;新key已存在返回0;成功返回1。


RESTORE:最早可用版本為2.6.0。使用RESTORE key ttl serialized-value [REPLACE]命令將序列化值反序列化存儲到key,ttl為0則key永久存在。3.0版本後,未使用REPLACE參數且key已存在時返回錯誤「Target key name is busy」。


SCAN:最早可用版本為2.8.0。使用SCAN cursor MATCH pattern COUNT count命令,返回小部分數據,不會阻塞Redis。基於游標操作,每次調用返回遊標用於下一次迭代。游標返回0表示迭代結束。


每次返回數量不固定,可能為空。SCAN命令支持匹配。


測試存儲10000個key:


返回結果表明,雖然設置count為1000,但每次返回的值只有10個左右。


SORT:最早可用版本為1.0.0。用於返回或保存list、set和sorted set的鍵,默認對數字或排序key排序,視為雙精度浮點數。按字典順序排序使用ALPHA參數;按外部欄位排序使用BY參數。


TOUCH:最早可用版本為3.2.1。修改key最後訪問時間,key不存在忽略。


TTL:最早可用版本為1.0.0。返回指定key的剩餘存活時間,單位為秒。2.6版本及以前,key不存在或永久key返回-1。從2.8版本開始,key不存在返回-2,永久key返回-1。


TYPE:最早可用版本為1.0.0。返回key存儲值的類型。


UNLINK:最早可用版本為4.0.0。刪除key,時間復雜度O(1),先從keyspace中刪除key,指定key已刪除,內存未釋放。在另一個線程中執行內存釋放操作,時間復雜度O(N)。


WAIT:最早可用版本為3.0.0。阻塞客戶端,直至所有寫操作完成並保存指定數量副本。總會返回副本數量或超時。

❷ Redis啟動、停止、Redis命令行的操作

1.redis命令

1 redis執行了make install後,redis的課執行文件都會自動復制到 /usr/local/bin 目錄

2 redis-server redis伺服器

3 redis-cli redis命令行客戶端

4 redis-benchmark redis性能測試工具

5 redis-check-aof aof文件修復工具6redis-check-mp rdb文件檢查工具

2.停止 redis 命令 

# 停止Redis命令

redis-cli shutdown

3.啟動 redis 命令

(1). # 啟動 redis-server

redis-server

(2). # 帶配置文件啟動

(3). # 帶配置文件啟動 且指定某幾個配置 配置名稱前加 -- 

 會覆蓋配置文件裡面的值

回到頂部

4.redis命令行客戶端

(1).發送命令

注意:框裡面的是 6379 裡面沒有登錄成功,下面改成了 1123 成功了,因為剛才上面改了埠

(2).命令返回值

狀態回復:pong表示可用

錯誤回復:不知道這個什麼命令

整數回復:多種命令會回復整數

下面的字元串回復,都是賦值了才有。

字元串回復:

多行字元串回復:

❸ redis常用命令是什麼

1、連接操作相關命令:



quit:關閉連接(connection)。
auth:簡單密碼認證。
2、value操作命令:

exists(key):確認key否存。
del(key):刪除key。

type(key):返值類型。



使用的注意事項

1、 Redis和Memcache都是將數據存放在內存中,都是內存資料庫。不過memcache還可用於緩存其他東西,例如圖片、視頻等等。

2、Redis不僅僅支持簡單的k/v類型的數據,同時還提供list,set,hash等數據結構的存儲。

3、虛擬內存–Redis當物理內存用完時,可以將一些很久沒用到的value 交換到磁碟 。

4、過期策略–memcache在set時就指定,例如set key1 0 0 8,即永不過期。Redis可以通過例如expire 設定,例如expire name 10 。




閱讀全文

與redis操作命令大全相關的資料

熱點內容
上汽榮威app在哪裡查詢 瀏覽:899
冰櫃壓縮機溫度108 瀏覽:718
阿里雲郵smtp伺服器地址 瀏覽:250
解壓館認知理解 瀏覽:239
為什麼使用非官方伺服器會封號 瀏覽:9
佛山加密文檔軟體 瀏覽:813
港式5張梭哈源碼 瀏覽:241
數據中心pdf 瀏覽:524
crf源碼解析 瀏覽:853
伺服器軟體開發是什麼意思 瀏覽:941
刪除彩信android 瀏覽:862
元宵節猜燈謎h5源碼 瀏覽:69
樂培生app怎麼綁定 瀏覽:762
視頻壓縮不清楚怎麼說 瀏覽:525
加好友伺服器繁忙是怎麼回事 瀏覽:381
怎麼解綁app的支付寶賬號 瀏覽:913
ip地址伺服器不可用怎麼解決方法 瀏覽:185
為什麼軟體需要伺服器 瀏覽:64
redis操作命令大全 瀏覽:599
python字元串重復索引 瀏覽:964