欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis中的連接命令與鍵命令操作詳解

 更新時(shí)間:2024年09月23日 15:00:53   作者:陳橘又青  
Redis連接命令主要是用于客戶端與服務(wù)器建立連接的,Redis是一種流行的內(nèi)存數(shù)據(jù)庫(kù),支持多種數(shù)據(jù)結(jié)構(gòu),其中鍵命令是核心操作之一,在Redis中,鍵(Key)是用來(lái)存儲(chǔ)數(shù)據(jù)的主要元素,每個(gè)鍵都有一個(gè)唯一的名稱,本文給大家介紹了Redis中的連接命令與鍵命令操作

一、連接命令

ping

通常用于測(cè)試與服務(wù)器的連接是否仍然生效,或者用于測(cè)量延遲值。

如果連接正常就返回一個(gè)PONG ,否則返回一個(gè)連接錯(cuò)誤。

127.0.0.1:6379> ping
PONG

echo m

打印一個(gè)特定的信息 m ,測(cè)試時(shí)使用。

127.0.0.1:6379> echo 'hello world'
"hello world"

select i

切換到指定的數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)索引號(hào) i 用數(shù)字值指定,以 0 作為起始索引值。默認(rèn)使用 0號(hào)數(shù)據(jù)庫(kù)。

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> 

案例:

在0號(hào)數(shù)據(jù)庫(kù)中設(shè)置鍵a為‘hello world’,在1號(hào)數(shù)據(jù)庫(kù)中調(diào)用

127.0.0.1:6379> set a 'hello world'
OK
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get a
(nil)

auth pword

開(kāi)啟了密碼保護(hù),在每次連接 Redis 服務(wù)器之后,就要使用auth命令解鎖,解鎖之后才能使用其他 Redis 命令。密碼匹配時(shí)返回 OK ,否則返回一個(gè)錯(cuò)誤。

設(shè)置密碼

127.0.0.1:6379> config set requirepass redis123456
OK   #requirepass的值就是密碼
127.0.0.1:6379> quit

在次登錄

[root@localhost redis]# ./src/redis-cli
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth redis123456
OK
127.0.0.1:6379> ping
PONG

清空密碼

127.0.0.1:6379> config set requirepass “”
OK   #requirepass的值就是密碼
127.0.0.1:6379> quit

quit

請(qǐng)求服務(wù)器關(guān)閉與當(dāng)前客戶端的連接。總是返回 OK (但是不會(huì)被打印顯示,因?yàn)楫?dāng)時(shí) Redis-cli 已經(jīng)退出)。

127.0.0.1:6379[1]> quit
[root@localhost redis]# 

二、鍵命令

set key value

將字符串值 value關(guān)聯(lián)到 key 。

127.0.0.1:6379> set key1 1  #傳入的都是字符串
OK

get key

返回 key所關(guān)聯(lián)的字符串值。如果 key 不存在那么返回特殊值 nil 。

127.0.0.1:6379> get key1
"1"

del key1 [key2 … keyn]

刪除給定的一個(gè)或多個(gè) key 。沒(méi)有的key忽略,返回被刪除 key 的數(shù)量。

127.0.0.1:6379> del key1
(integer) 1

案例:

聲明key1,key2,key3,刪除key1,key2,key4

127.0.0.1:6379> set key1 1
OK
127.0.0.1:6379> set key2 1
OK
127.0.0.1:6379> set key3 1
OK
127.0.0.1:6379> del key1 key2 key4
(integer) 2

exists key

檢查給定 key 是否存在。若 key 存在,返回 1 ,否則返回 0 。

127.0.0.1:6379> exists key3
(integer) 1

type key

返回 key 所儲(chǔ)存的值的類型。none (key不存在)、string (字符串)、list (列表)、set (集合)、zset (有序集)、hash (哈希表)

127.0.0.1:6379> type key1
string

expire key seconds

為給定 key 設(shè)置生存時(shí)間,以秒為單位,當(dāng) key 過(guò)期時(shí)(生存時(shí)間為 0 ),它會(huì)被自動(dòng)刪除。設(shè)置成功返回 1 。其他為0。

127.0.0.1:6379> expire key3 30
(integer) 1
127.0.0.1:6379> ttl key3  #查看有效時(shí)間
(integer) 24
127.0.0.1:6379> exists key3 #驗(yàn)證是否存在
(integer) 0

pexpire key mseconds

這個(gè)命令和 EXPIRE 命令的作用類似,但是它以毫秒為單位設(shè)置 key 的生存時(shí)間,而不像 EXPIRE 命令那樣,以秒為單位。設(shè)置成功,返回 1。key不存在或設(shè)置失敗,返回0

127.0.0.1:6379> set key1 abc
OK
127.0.0.1:6379> pexpire key1 10000
(integer) 1
127.0.0.1:6379> ttl key1
(integer) 5
127.0.0.1:6379> pttl key1
(integer) 746

persist key

移除給定 key 的生存時(shí)間,將這個(gè) key 從易失的轉(zhuǎn)換成持久的。當(dāng)生存時(shí)間移除成功時(shí),返回 1 .如果 key 不存在或 key 沒(méi)有設(shè)置生存時(shí)間,返回 0 。

127.0.0.1:6379> set zhangwu 1
OK
127.0.0.1:6379> persist zhangwu
(integer) 0
127.0.0.1:6379> expire zhangwu 30
(integer) 1
127.0.0.1:6379> persist zhangwu
(integer) 1
127.0.0.1:6379> ttl zhangwu
(integer) -1

ttl key

以秒為單位,返回給定 key 的剩余生存時(shí)間(TTL, time to live)。當(dāng) key 不存在時(shí),返回 -2 。當(dāng) key 存在但沒(méi)有設(shè)置剩余生存時(shí)間時(shí),返回 -1 。

127.0.0.1:6379> set key1 helloworld
OK
127.0.0.1:6379> ttl key1
(integer) -1
127.0.0.1:6379> expire key1 50
(integer) 1
127.0.0.1:6379> ttl key1
(integer) 44
127.0.0.1:6379> ttl key1
(integer) -2

pttl key

這個(gè)命令類似于 TTL 命令,但它以毫秒為單位返回 key 的剩余生存時(shí)間,而不是像 TTL 命令那樣,以秒為單位。當(dāng) key 不存在時(shí),返回 -2 。當(dāng) key 存在但沒(méi)有設(shè)置剩余生存時(shí)間時(shí),返回 -1 。

127.0.0.1:6379> pttl key1
(integer) -2
127.0.0.1:6379> set key1 abc
OK
127.0.0.1:6379> pexpire key1 30000
(integer) 1
127.0.0.1:6379> pttl key1
(integer) 27345

keys pattern

查找所有符合給定模式 pattern 的 key 。符合給定模式的 key 列表。

通配符

* 表示多個(gè)字符
? 表示一個(gè)字符
[] 表示只能是[]里面的字符
\ 表示指定特殊字符
127.0.0.1:6379> mset zhangsan 1 zhangsi 2 zhangwu 3
OK
127.0.0.1:6379> keys *
1) "zhangwu"
2) "zhangsan"
3) "zhangsi"
127.0.0.1:6379> keys ng*
(empty list or set)
127.0.0.1:6379> keys *ng*
1) "zhangwu"
2) "zhangsan"
3) "zhangsi"
127.0.0.1:6379> keys zhang??
1) "zhangwu"
2) "zhangsi"
127.0.0.1:6379> keys zha[ng]si
(empty list or set)
127.0.0.1:6379> keys zhan[ng]si
1) "zhangsi"

move key db

將當(dāng)前數(shù)據(jù)庫(kù)的 key 移動(dòng)到給定的數(shù)據(jù)庫(kù) db 當(dāng)中。移動(dòng)成功返回 1 ,失敗則返回 0 。

127.0.0.1:6379> keys *
1) "zhangwu"
2) "zhangsan"
3) "zhangsi"
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> move zhangsan 1
(integer) 1
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
1) "zhangsan"
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
1) "zhangwu"
2) "zhangsi"

注意:

key不存在時(shí),移動(dòng)失敗

key移動(dòng)到1庫(kù)時(shí),1庫(kù)中出現(xiàn)同名的key,移動(dòng)失敗

random key

從當(dāng)前數(shù)據(jù)庫(kù)中隨機(jī)返回(不刪除)一個(gè) key 。當(dāng)數(shù)據(jù)庫(kù)不為空時(shí),返回一個(gè) key 。當(dāng)數(shù)據(jù)庫(kù)為空時(shí),返回 nil 。

127.0.0.1:6379> randomkey
"zhangwu"
127.0.0.1:6379> randomkey
"key"
127.0.0.1:6379> randomkey
"key"
127.0.0.1:6379> randomkey
"zhangwu"

rename key newkey

將 key 改名為 newkey 。改名成功時(shí)提示 OK ,失敗時(shí)候返回一個(gè)錯(cuò)誤。

127.0.0.1:6379> rename key key1
OK
127.0.0.1:6379> keys *
1) "key1"
2) "zhangwu"
3) "zhangsi"

注意:

當(dāng) key 和 newkey 相同,或者 key 不存在時(shí),返回一個(gè)錯(cuò)誤。

當(dāng) newkey 已經(jīng)存在時(shí), RENAME 命令將覆蓋舊值。

renamenx key newkey

當(dāng)且僅當(dāng) newkey 不存在時(shí),將 key 改名為 newkey 。修改成功時(shí),返回 1 。如果 newkey 已經(jīng)存在,返回 0 。

127.0.0.1:6379> renamenx zhangsi zhangwu
(integer) 0
127.0.0.1:6379> renamenx zhangsi zhangsan
(integer) 1
127.0.0.1:6379> keys *
1) "zhangsan"
2) "key1"
3) "zhangwu"

以上就是Redis中的連接命令與鍵命令操作詳解的詳細(xì)內(nèi)容,更多關(guān)于Redis連接命令與鍵命令的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Redis中AOF與RDB持久化策略深入分析

    Redis中AOF與RDB持久化策略深入分析

    Redis作為一款內(nèi)存數(shù)據(jù)庫(kù),因?yàn)槭莾?nèi)存讀寫(xiě),所以性能很強(qiáng),但內(nèi)存存儲(chǔ)是易失性的,斷電或系統(tǒng)奔潰都會(huì)導(dǎo)致數(shù)據(jù)丟失,因此Redis也需要將其數(shù)據(jù)持久化到磁盤上面,當(dāng)Redis服務(wù)重啟時(shí),會(huì)把磁盤上的數(shù)據(jù)再加載進(jìn)內(nèi)存,Redis提供了兩種持久化機(jī)制-RDB快照和AOF日志
    2022-11-11
  • 解讀Redis秒殺優(yōu)化方案(阻塞隊(duì)列+基于Stream流的消息隊(duì)列)

    解讀Redis秒殺優(yōu)化方案(阻塞隊(duì)列+基于Stream流的消息隊(duì)列)

    該文章介紹了使用Redis的阻塞隊(duì)列和Stream流的消息隊(duì)列來(lái)優(yōu)化秒殺系統(tǒng)的方案,通過(guò)將秒殺流程拆分為兩條流水線,使用Redis緩存緩解數(shù)據(jù)庫(kù)壓力,并結(jié)合Lua腳本進(jìn)行原子性判斷,使用阻塞隊(duì)列和消息隊(duì)列異步處理訂單,有效提高了系統(tǒng)的并發(fā)處理能力和可用性
    2025-02-02
  • Redis+PHP實(shí)現(xiàn)用戶消息推送每天最多通知2次的功能

    Redis+PHP實(shí)現(xiàn)用戶消息推送每天最多通知2次的功能

    在開(kāi)發(fā)應(yīng)用程序中,經(jīng)常需要向用戶推送消息通知,但是為了避免過(guò)多的打擾用戶,我們希望限制每天最多通知2次,本篇博文將介紹如何使用PHP和Redis實(shí)現(xiàn)這一功能,文中有詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-10-10
  • Redis對(duì)象與redisObject超詳細(xì)分析源碼層

    Redis對(duì)象與redisObject超詳細(xì)分析源碼層

    這篇文章主要介紹了Redis對(duì)象與redisObject源碼層的分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-11-11
  • Redis為什么快如何實(shí)現(xiàn)高可用及持久化

    Redis為什么快如何實(shí)現(xiàn)高可用及持久化

    這篇文章主要介紹了Redis為什么快如何實(shí)現(xiàn)高可用及持久化,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Satoken+Redis實(shí)現(xiàn)短信登錄、注冊(cè)、鑒權(quán)功能

    Satoken+Redis實(shí)現(xiàn)短信登錄、注冊(cè)、鑒權(quán)功能

    這篇文章主要介紹了Satoken+Redis實(shí)現(xiàn)短信登錄、注冊(cè)、鑒權(quán)功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-01-01
  • Redis SETEX命令實(shí)現(xiàn)鍵值對(duì)管理

    Redis SETEX命令實(shí)現(xiàn)鍵值對(duì)管理

    本文主要介紹了Redis SETEX命令實(shí)現(xiàn)鍵值對(duì)管理,SETEX命令用于設(shè)置具有過(guò)期時(shí)間的鍵值對(duì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • 關(guān)于Redis持久化的深入探究

    關(guān)于Redis持久化的深入探究

    Redis持久化是將內(nèi)存中的數(shù)據(jù)保存到磁盤,以防止數(shù)據(jù)丟失。Redis提供了兩種持久化方式:RDB和AOF,本文將給大家詳解介紹Redis持久化,感興趣的同學(xué)可以跟著小編一起來(lái)學(xué)習(xí)
    2023-05-05
  • 使用Redis實(shí)現(xiàn)用戶積分排行榜的教程

    使用Redis實(shí)現(xiàn)用戶積分排行榜的教程

    這篇文章主要介紹了使用Redis實(shí)現(xiàn)用戶積分排行榜的教程,包括一個(gè)用PHP腳本進(jìn)行操作的例子,需要的朋友可以參考下
    2015-04-04
  • 基于Redis緩存數(shù)據(jù)常見(jiàn)的三種問(wèn)題及解決

    基于Redis緩存數(shù)據(jù)常見(jiàn)的三種問(wèn)題及解決

    這篇文章主要介紹了基于Redis緩存數(shù)據(jù)常見(jiàn)的三種問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評(píng)論