常用Redis的鍵命令參考

一、DEL

DEL key [key …] 刪除給定的一個或多個 key 。

不存在的 key 會被忽略。

#刪除單個鍵127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> del name
(integer) 1# 刪除一個不存在的 key, 失敗,沒有 key 被刪除127.0.0.1:6379> EXISTS phone
(integer) 0
127.0.0.1:6379> del phone 
(integer) 0# 同時刪除多個 key127.0.0.1:6379> set name redis
OK
127.0.0.1:6379> set type hello
OK
127.0.0.1:6379> set age 13
OK
127.0.0.1:6379> del name type age
(integer) 3
二、DUMP

DUMP key

序列化給定 key ,并返回被序列化的值,使用 RESTORE 命令可以將這個值反序列化為 Redis 鍵。

序列化生成的值有以下幾個特點:?

(1)它帶有 64 位的校驗和,用于檢測錯誤, RESTORE 在進行反序列化之前會先檢查校驗和。 值的編碼格式和 RDB 文件保持一致。

(2)RDB 版本會被編碼在序列化值當中,如果因為 Redis 的版本不同造成 RDB 格式不兼容,那么 Redis 會拒絕對這個值進行反序列化操作。

(3)序列化的值不包括任何生存時間信息。

# 如果 key 不存在,那么返回 nil 。否則,返回序列化之后的值。
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> dump name
"\x00\bzhangsan\x06\x00\xe1\xd1\x98\xa5mm\x1a\xdb"
127.0.0.1:6379> dump name1
(nil)
三、EXISTS

EXISTS key

檢查給定 key 是否存在。

127.0.0.1:6379> set name shangsan
OK
127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists db
(integer) 0
四、EXPIRE

EXPIRE key seconds

為給定 key 設置生存時間,當 key 過期時(生存時間為 0 ),它會被自動刪除。

生存時間可以通過使用 DEL 命令來刪除整個 key 來移除,或者被 SET 和 GETSET 命令覆寫(overwrite),這意味著,如果一個命令只是修改(alter)一個帶生存時間的 key 的值而不是用一個新的 key 值來代替(replace)它的話,那么生存時間不會被改變。 比如說,對一個 key 執行 INCR 命令,對一個列表進行 LPUSH 命令,或者對一個哈希表執行 HSET 命令,這類操作都不會修改 key 本身的生存時間。

另一方面,如果使用 RENAME 對一個 key 進行改名,那么改名后的 key 的生存時間和改名前一樣。 RENAME 命令的另一種可能是,嘗試將一個帶生存時間的 key 改名成另一個帶生存時間的 another_key ,這時舊的 another_key (以及它的生存時間)會被刪除,然后舊的 key 會改名為 another_key ,因此,新的 another_key 的生存時間也和原本的 key 一樣。

使用 PERSIST 命令可以在不刪除 key 的情況下,移除 key 的生存時間,讓 key 重新成為一個『持久的』(persistent) key 。 更新生存時間 可以對一個已經帶有生存時間的 key 執行 EXPIRE 命令,新指定的生存時間會取代舊的生存時間。

127.0.0.1:6379> set cache zhangsan
OK# 設置過期時間為 30 秒
127.0.0.1:6379> expire cache 30
(integer) 1
127.0.0.1:6379> ttl cache  # 查看剩余生存時間
(integer) 25
127.0.0.1:6379> expire cache 3000
(integer) 1
127.0.0.1:6379> ttl cache  # 更新過期時間
(integer) 2997
五、EXPIREAT

EXPIREAT key timestamp

EXPIREAT 的作用和 EXPIRE 類似,都用于為 key 設置生存時間。 不同在于 EXPIREAT 命令接受的時間參數是 UNIX 時間戳(unix timestamp)。

127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> expireat name 1700896579000 #在2023-11-25 15:16:19過期
(integer) 1
127.0.0.1:6379> ttl name
(integer) 1699195768750
六、KEYS

KEYS pattern

查找所有符合給定模式 pattern 的 key 。 KEYS 匹配數據庫中所有 key 。KEYS h?llo 匹配 hello , hallo 和 hxllo 等。KEYS hllo 匹配 hllo 和 heeeeello 等。KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。

特殊符號用 \ 隔開 Warning KEYS 的速度非常快,但在一個大的數據庫中使用它仍然可能造成性能問題,如果你需要從一個數據集中查找特定的 key ,你最好還是用 Redis 的集合結構(set)來代替。

127.0.0.1:6379> mset one 1 two 2 three 3 four 4   # 一次設置 4 個 key
OK
127.0.0.1:6379> keys *o*
1) "stock"
2) "four"
3) "one"
4) "two"
127.0.0.1:6379> keys t??
1) "two"
127.0.0.1:6379> keys t[w]*
1) "two"
127.0.0.1:6379> keys *   # 匹配數據庫內所有 key1) "[a2"2) "stock"3) "three"4) "name"5) "a3"6) "a2"7) "four"8) "b1"9) "one"
10) "two"
11) "cache"
12) "a1"

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/167950.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/167950.shtml
英文地址,請注明出處:http://en.pswp.cn/news/167950.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Qt C++中調用python,并將軟件打包發布,python含第三方依賴

工作中遇到qt c調用我的python 代碼,并且想要一鍵打包,這里我根據參考的以及個人實踐的結果來簡單實現一下。 環境:windows系統,QT Creater 4.5, python 3.8(anaconda虛擬環境) 1. 簡單QT調用…

【 Kubernetes 風云錄 】- Istio 應用多版本流量控制

文章目錄 原理實現DeploymentVirtualServiceDestinationRule 約束部署 目的: 根據不同的引擎版本,可以把請求發送到指定的引擎上。可以實現版本降級。 原理 Istio通過VirtualService和DestinationRule兩個資源對象來實現流量管理,其中VirtualService用于…

LeetCode Hot100 98.驗證二叉搜索樹

題目: 給你一個二叉樹的根節點 root ,判斷其是否是一個有效的二叉搜索樹。 有效 二叉搜索樹定義如下: 節點的左子樹只包含 小于 當前節點的數。節點的右子樹只包含 大于 當前節點的數。所有左子樹和右子樹自身必須也是二叉搜索樹。 方法一…

electron windows robotjs 安裝教程

Robotjs 安裝 前言第一步 : 安裝python第二步 : 安裝Visual Studio 2022第三步 : 安裝robotjs 前言 robotjs可以控制鼠標鍵盤,獲取屏幕內容,配合electron可做很多自動化操作。windows下配置環境有很多坑,很多文章都太舊了。試了很多次發現了…

ky10 server x86 auditd安裝(日志審計系統)

概述 Auditd工具可以幫助運維人員審計Linux,分析發生在系統中的發生的事情。Linux 內核有用日志記錄事件的能力,包括記錄系統調用和文件訪問。管理員可以檢查這些日志,確定是否存在安全漏洞(如多次失敗的登錄嘗試,或者…

golang學習筆記——接口和繼承比較2

接口和繼承 現在有一個需要要求大學生和足球運動員掌握英語技能,請問怎么實現? 給運動員和學生結構體添加studyEnglish方法顯示是可以的,但是籃球動員和中學生也學習了英語,顯示不行。這時,我們可以直接給足球運動員和大學生添加…

跳轉應用市場詳情頁market

關于作者:CSDN內容合伙人、技術專家, 從零開始做日活千萬級APP。 專注于分享各領域原創系列文章 ,擅長java后端、移動開發、商業變現、人工智能等,希望大家多多支持。 未經允許不得轉載 目錄 一、導讀二、概覽三、跳轉到各大廠商應…

播放器開發(四):多線程解復用與解碼模塊實現

學習課題:逐步構建開發播放器【QT5 FFmpeg6 SDL2】 前言 根據第一章內容,我們首先可以先把解復用和解碼模塊完成,其中需要使用到多線程以及隊列,還需要使用FFmpeg進行解復用和解碼動作的實現。 創建BaseQueue基類 BaseQueue.h…

亞馬遜兩步驗證有哪些驗證方法?

亞馬遜通常提供多種兩步驗證的方式,包括短信(通過手機接收驗證碼)和認證器應用程序(如Google Authenticator、Authy等)。選擇你偏好的方式。 短信驗證: 如果選擇短信驗證,需要將你的手機號碼關聯…

YOLOv8改進 | 2023 | LSKAttention大核注意力機制助力極限漲點

論文地址:官方論文地址 代碼地址:官方代碼地址 一、本文介紹 在這篇文章中,我們將講解如何將LSKAttention大核注意力機制應用于YOLOv8,以實現顯著的性能提升。首先,我們介紹LSKAttention機制的基本原理,…

loginctl - 控制 systemd 登錄管理器

loginctl loginctl用途loginctl安裝開啟loginctl服務session操作user操作管理用戶服務 loginctl - Control the systemd login manager Redhat/centos平臺使用loginctl管理登錄用戶與session loginctl用途 控制 systemd 登錄管理器管理當前登錄的用戶和session loginctl安裝…

Peter算法小課堂—高精度加法

指針與數組 看看以下代碼&#xff0c;請預測答案 #include <bits/stdc.h> using namespace std; int x[10]{0,1,2,3,4,5,6,7,8,9}; int main(){cout<<x<<endl;cout<<x3<<endl;cout<<*x<<endl;cout<<*(x7)<<endl;cout&…

定制手機套餐---python序列

if __name__ __main__:print("定制手機套餐")print("")#定義電話時長&#xff1a;字典callTimeOptions{1:0分鐘,2:50分鐘,3:100分鐘,4:300分鐘,5:不限量}keyinput("請輸入電話時長的選擇編號&#xff1a;")valuecallTimeOptions.get(key)if val…

代碼隨想錄算法訓練營第五十四天|392.判斷子序列 115.不同的子序列

文檔講解&#xff1a;代碼隨想錄 視頻講解&#xff1a;代碼隨想錄B站賬號 狀態&#xff1a;看了視頻題解和文章解析后做出來了 392.判斷子序列 class Solution:def isSubsequence(self, s: str, t: str) -> bool:dp [[0] * (len(t)1) for _ in range(len(s)1)]for i in ra…

Java 關于批量插入遇到的問題 -sqlserver

序言&#xff1a; 我們在做項目的時候&#xff0c;經常會遇到&#xff0c;對數據的新增動作&#xff0c;如果數據量很少的情況下&#xff0c;單個新增對性能還好&#xff0c;但是一旦涉及到 大數據量&#xff0c;如十萬&#xff0c;百萬&#xff0c;千萬&#xff0c;這個時候如…

RabbitMq使用與整合

MQ基本概念 MQ概述 MQ全稱 Message Queue&#xff08;[kju?]&#xff09;&#xff08;消息隊列&#xff09;&#xff0c;是在消息的傳輸過程中保存消息的容器。多用于分布式系統之間進行通信。 &#xff08;隊列是一種容器&#xff0c;用于存放數據的都是容器&#xff0c;存…

優秀的時間追蹤軟件Timemator for Mac輕松管理時間!

在現代社會&#xff0c;時間管理成為了我們工作和生活中的一大挑戰。如果你經常感到時間不夠用&#xff0c;無法高效地完成任務&#xff0c;那么Timemator for Mac將成為你的得力助手。 Timemator for Mac是一款出色的時間追蹤軟件&#xff0c;它可以幫助你精確記錄和管理你的…

Linux的基本指令 ( 一 )

目錄 前言 Linux基本指令 快速認識五個指令 ls指令 補充內容 pwd指令 補充內容 cd指令 補充內容 重新認識指令 指令的本質 which指令 alias指令 最后 一個文件的三種時間 tree指令及安裝 tree指令 前言 關于Linux操作系統的桌面&#xff0c;在學校教學中我們…

實用高效 無人機光伏巡檢系統助力電站可持續發展

近年來&#xff0c;我國光伏發電行業規模日益壯大&#xff0c;全球領先地位愈發鞏固。為解決光伏電站運維中的難題&#xff0c;浙江某光伏電站與復亞智能達成戰略合作&#xff0c;共同推出全自動無人機光伏巡檢系統&#xff0c;旨在提高發電效率、降低運維成本&#xff0c;最大…

Spark---SparkCore(一)

一、術語與寬窄依賴 1、術語解釋 1、Master(standalone):資源管理的主節點&#xff08;進程&#xff09; 2、Cluster Manager:在集群上獲取資源的外部服務(例如&#xff1a;standalone,Mesos,Yarn) 3、Worker Node(standalone):資源管理的從節點(進程)或者說管理本機資源的…