自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文讓你入門Redis,你學(xué)會了嗎?

數(shù)據(jù)庫 Redis
Redis(Remote Dictionary Server)是一個開源的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲系統(tǒng),常被用作數(shù)據(jù)庫、緩存和消息隊列等。

Redis(Remote Dictionary Server)是一個開源的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲系統(tǒng),常被用作數(shù)據(jù)庫、緩存和消息隊列等。它支持多種數(shù)據(jù)結(jié)構(gòu),包括字符串、哈希表、列表、集合和有序集合。以下是 Redis 的一些常見操作:

連接 Redis

可以使用 redis-cli 命令連接到 Redis 服務(wù)器。例如:

redis-cli -h host -p port -a password

其中 host 是 Redis 服務(wù)器的主機名,port 是 Redis 服務(wù)器的端口號,password 是連接密碼(如果有)。

操作String(字符串)類型

1、設(shè)置鍵值

要設(shè)置一個鍵值對,請使用SET命令。例如,要將鍵“name”設(shè)置為值“ctt”,可以執(zhí)行以下操作:

127.0.0.1:6379> SET name  ctt

2、 獲取鍵值

要獲取鍵值,請使用GET命令。例如,要獲取鍵“name”的值,可以執(zhí)行以下操作:

127.0.0.1:6379> GET name

這將返回鍵“name”的值,“ctt”。

3、設(shè)置過期時間

要為一個鍵設(shè)置過期時間,請使用EXPIRE命令。例如,要將鍵“name”的過期時間設(shè)置為60秒,可以執(zhí)行以下操作:

127.0.0.1:6379> EXPIRE name 60

查看過期指定key的過期時間,可以用TTL命令。

127.0.0.1:6379> TTL  name

返回的結(jié)果便是剩余時間(到期key會自動刪除[目前先這么認(rèn)為,不同版本的不同角色處理有差異]),如果返回-1,則表示無過期時間。

4、判斷鍵是否存在

要檢查一個鍵是否存在,請使用EXISTS命令。例如,要檢查鍵“name”是否存在,可以執(zhí)行以下操作:

127.0.0.1:6379> EXISTS name

如果鍵存在,則返回1;如果鍵不存在,則返回0。

也可以使用TYPE命令:

127.0.0.1:6379> TYPE name

返回對應(yīng)的類型(如,string)則說明key存在,返回“none”說明key不存在。

還可以用TTL命令判斷。

127.0.0.1:6379> TTL name

返回對應(yīng)的時間(>=0的數(shù)字),則說明key存在,對應(yīng)的數(shù)字為剩余過期時間。

返回-1,則說明key存在,且key無過期時間。

返回-2,則說明key不存在。

5、刪除鍵

要刪除一個鍵,請使用DEL命令。例如,要刪除鍵“name”,可以執(zhí)行以下操作:

127.0.0.1:6379> DEL aaa

6、自增/自減操作

要對一個鍵進(jìn)行自增操作,請使用INCR命令。例如,要將鍵“cnt”自增1,可以執(zhí)行以下操作:

127.0.0.1:6379> INCR cnt

類似地,要對一個鍵進(jìn)行自減操作,請使用DECR命令。

操作哈希表(Hash類型)

Redis中的Hash類型是一個鍵值對的集合,其中每個鍵都映射到一個值。下面是Redis中Hash類型的常見操作:

1、設(shè)置Hash值

要設(shè)置一個Hash值,請使用HSET命令。例如,要將“user”哈希中的“name”字段設(shè)置為“ctt”,"age "字段設(shè)置為 “29” 可以執(zhí)行以下操作:

rubyCopy code127.0.0.1:6379> HSET user name "John Doe"

2、獲取Hash值

要獲取一個Hash值,請使用HGET命令。例如,要獲取“user”哈希中的“name”字段的值,可以執(zhí)行以下操作:

127.0.0.1:6379> HGET user name

這將返回“ctt”。

3、獲取所有Hash值

要獲取所有的Hash值,請使用HGETALL命令。例如,要獲取“user”哈希中所有的鍵值對,可以執(zhí)行以下操作:

127.0.0.1:6379> HGETALL user

這將返回一個包含所有鍵值對的列表。

4、刪除Hash值

要刪除一個Hash值,請使用HDEL命令。例如,要刪除“user”哈希中的age字段,可以執(zhí)行以下操作:

127.0.0.1:6379> HDEL user age

5、檢查Hash值是否存在

要檢查一個Hash值是否存在,請使用HEXISTS命令。例如,要檢查“user”哈希中是否存在“name”字段,可以執(zhí)行以下操作:

127.0.0.1:6379> HEXISTS user name

如果存在,將返回1;否則返回0。

6、獲取Hash中所有的鍵

要獲取一個Hash中所有的鍵,請使用HKEYS命令。例如,要獲取“user”哈希中的所有鍵,可以執(zhí)行以下操作:

127.0.0.1:6379> HKEYS user

這將返回一個包含所有鍵的列表。

7、獲取Hash中所有的值

要獲取一個Hash中所有的值,請使用HVALS命令。例如,要獲取“user”哈希中的所有值,可以執(zhí)行以下操作:

127.0.0.1:6379> HVALS user

這將返回一個包含所有值的列表。

操作列表(list類型)

Redis中的List類型是一個鏈表結(jié)構(gòu),其中每個節(jié)點都包含一個字符串值。下面是Redis中List類型的常見操作:

1、在列表的頭部插入元素

要在列表的頭部插入元素,請使用LPUSH命令。例如,要在名為“mylist”的列表的頭部插入值為“ctt”的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LPUSH mylist ctt

2、在列表的尾部插入元素

要在列表的尾部插入元素,請使用RPUSH命令。例如,要在名為“mylist”的列表的尾部插入值為“ccc”的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> RPUSH mylist ccc

3、獲取列表長度

要獲取列表的長度,請使用LLEN命令。例如,要獲取名為“mylist”的列表的長度,可以執(zhí)行以下操作:

127.0.0.1:6379> LLEN mylist

這將返回列表的長度。

4、獲取列表中的元素

要獲取列表中的元素,請使用LINDEX命令。例如,要獲取名為“mylist”的列表中的第一個元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LINDEX mylist 0

5、獲取列表的范圍

要獲取列表的一部分,請使用LRANGE命令。例如,要獲取名為“mylist”的列表中從第二個到第四個元素之間的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LRANGE mylist 1 3

這將返回一個包含第二個到第四個元素之間的所有元素的列表。

6、刪除列表中的元素

要刪除列表中的元素,請使用LREM命令。例如,要刪除名為“mylist”的列表中的所有值為“ccc”的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LREM mylist 0 ccc

7、彈出列表中的元素

要從列表的頭部或尾部彈出元素,請使用LPOP或RPOP命令。例如,要從名為“mylist”的列表的頭部彈出一個元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LPOP mylist

這將彈出并返回列表的第一個元素。

彈出最后一個元素,使用RPOP。

8、獲取所有元素

取出一個列表里的所有元素,可以執(zhí)行以下操作:

127.0.0.1:6379> LRANGE  mylist 0 -1

無序集合(set類型)操作

Redis中的Set類型是一個無序的、不重復(fù)的字符串集合。下面是Redis中Set類型的常見操作:

1、向集合中添加元素

要向集合中添加元素,請使用SADD命令。例如,要將值為“ctt”的元素添加到名為“myset”的集合中,可以執(zhí)行以下操作:

127.0.0.1:6379> SADD myset ctt

2、獲取集合中的元素數(shù)量

要獲取集合中的元素數(shù)量,請使用SCARD命令。例如,要獲取名為“myset”的集合中的元素數(shù)量,可以執(zhí)行以下操作:

127.0.0.1:6379> SCARD myset

3、獲取集合中的所有元素

要獲取集合中的所有元素,請使用SMEMBERS命令。例如,要獲取名為“myset”的集合中的所有元素,可以執(zhí)行以下操作:

127.0.0.1:6379> SMEMBERS myset

這將返回一個包含所有元素的列表。

4、判斷元素是否在集合中存在

要判斷一個元素是否在集合中存在,請使用SISMEMBER命令。例如,要判斷值為“ctt”的元素是否存在于名為“myset”的集合中,可以執(zhí)行以下操作:

127.0.0.1:6379> SISMEMBER myset ctt

如果元素存在于集合中,則返回1;否則返回0。

5、從集合中刪除元素

要從集合中刪除元素,請使用SREM命令。例如,要刪除名為“myset”的集合中值為“ctt2”的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> SREM myset ctt2

6、求多個集合的交集、并集或差集

要求多個集合的交集,請使用SINTER命令;要求并集,請使用SUNION命令;要求差集,請使用SDIFF命令。例如,假設(shè)有三個集合“set1”、“set2”和“set3”,要求它們的交集,可以執(zhí)行以下操作:

127.0.0.1:6379> SINTER set1 set2 set3
127.0.0.1:6379> SUNION set1 set2 set3

這將返回一個包含所有集合的交集&并集元素的列表。

這些是Redis中Set類型的一些常見操作。Set類型是一個非常有用的數(shù)據(jù)結(jié)構(gòu),可用于存儲和處理多個相關(guān)但不重復(fù)的元素。

有序集合(ZSET類型)操作

Redis中的有序集合(Sorted Set,簡稱ZSet)是一個非常有用的數(shù)據(jù)結(jié)構(gòu),它類似于Set類型,但是每個元素都會關(guān)聯(lián)一個分?jǐn)?shù)(score),且元素按照分?jǐn)?shù)從小到大進(jìn)行排序。下面是Redis中ZSet類型的常見操作:

1、向有序集合中添加元素

要向有序集合中添加元素,請使用ZADD命令。例如,要將值為“ctt”的元素添加到名為“myzset”的有序集合中,且它的分?jǐn)?shù)為100,可以執(zhí)行以下操作:

127.0.0.1:6379> ZADD myzset 100 ctt

2、獲取有序集合中的元素數(shù)量

要獲取有序集合中的元素數(shù)量,請使用ZCARD命令。例如,要獲取名為“myzset”的有序集合中的元素數(shù)量,可以執(zhí)行以下操作:

127.0.0.1:6379> ZCARD myzset

3、獲取有序集合中指定范圍內(nèi)的元素

要獲取有序集合中指定范圍內(nèi)的元素,請使用ZRANGE命令。例如,要獲取名為“myzset”的有序集合中排名在1到3之間的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> ZRANGE myzset 0 2

這將返回一個包含指定元素的列表。

4、獲取有序集合中指定分?jǐn)?shù)范圍內(nèi)的元素

要獲取有序集合中指定分?jǐn)?shù)范圍內(nèi)的元素,請使用ZRANGEBYSCORE命令。例如,要獲取名為“myzset”的有序集合中分?jǐn)?shù)在0到20之間的元素,可以執(zhí)行以下操作:

127.0.0.1:6379> ZRANGEBYSCORE myzset 0 20

5、獲取有序集合中指定元素的排名

要獲取有序集合中指定元素的排名,請使用ZRANK命令。例如,要獲取名為“myzset”的有序集合中元素“ttc”的排名,可以執(zhí)行以下操作:

127.0.0.1:6379> ZRANK myzset ttc

6、獲取有序集合中指定元素的分?jǐn)?shù)

要獲取有序集合中指定元素的分?jǐn)?shù),請使用ZSCORE命令。例如,要獲取名為“myzset”的有序集合中元素“ctt”的分?jǐn)?shù),可以執(zhí)行以下操作:

127.0.0.1:6379> ZSCORE myzset ctt

7、從有序集合中刪除元素

要從有序集合中刪除元素,請使用ZREM命令。例如,要刪除名為“myzset”的有序集合中元素“a”,可以執(zhí)行以下操作:

127.0.0.1:6379> ZREM myzset a

8、查看有序集合中所有元素

使用ZRANGE命令查看有序集合中的所有元素。

127.0.0.1:6379> ZRANGE myzset 0 -1

常見的管理命令

1、info命令

Redis的INFO命令用于獲取有關(guān)Redis服務(wù)器的各種統(tǒng)計信息和診斷信息。執(zhí)行INFO命令將返回一個包含大量鍵值對的文本字符串,其中每個鍵值對代表一個指標(biāo)。

以下是一些常見的INFO命令用法和示例:

  • 獲取Redis服務(wù)器的統(tǒng)計信息

要獲取Redis服務(wù)器的統(tǒng)計信息,可以執(zhí)行以下命令:

127.0.0.1:6379> INFO [all]

此命令將返回一個包含各種指標(biāo)的文本字符串,例如內(nèi)存使用情況、客戶端連接數(shù)、鍵數(shù)量、命中率等等。

  • 獲取指定信息分類下的統(tǒng)計信息

可以通過傳遞參數(shù)來指定要檢索哪個信息分類的統(tǒng)計信息。例如,要獲取Redis服務(wù)器的內(nèi)存使用情況,可以執(zhí)行以下命令:

127.0.0.1:6379> INFO memory

此命令將返回一個包含有關(guān)Redis服務(wù)器內(nèi)存使用情況的各種指標(biāo)的文本字符串。

  • 獲取Redis服務(wù)器的命令統(tǒng)計信息

要獲取Redis服務(wù)器的命令統(tǒng)計信息,可以執(zhí)行以下命令:

127.0.0.1:6379> INFO commandstats

此命令將返回一個包含各種Redis服務(wù)器命令的統(tǒng)計信息的文本字符串,例如命令名稱、執(zhí)行次數(shù)、執(zhí)行時間、平均執(zhí)行時間等等。

  • 獲取Redis服務(wù)器的主從復(fù)制信息

要獲取Redis服務(wù)器的主從復(fù)制信息,可以執(zhí)行以下命令:

127.0.0.1:6379> INFO replication

此命令將返回一個包含有關(guān)Redis服務(wù)器主從復(fù)制狀態(tài)的各種指標(biāo)的文本字符串,例如主從節(jié)點數(shù)量、主節(jié)點狀態(tài)、從節(jié)點狀態(tài)、復(fù)制偏移量等等。

  • 獲取Redis key分布情況

要獲取Redis key的分布情況,可以執(zhí)行以下命令:

127.0.0.1:6379> INFO Keyspace

此命令將返回一個每個庫的key的數(shù)量、含有過期時間的key的數(shù)據(jù)以及平均過期時間。

2、查看所有已連接的客戶端信息

127.0.0.1:6379> client list

此命令將返回當(dāng)前正在連接的redi實例中的所有客戶端的信息

3、監(jiān)控所有操作命令monitor

例如,在一個客戶端執(zhí)行如下操作

127.0.0.1:6379[2]> select 4
127.0.0.1:6379[4]> set a ctt
127.0.0.1:6379[4]> EXPIRE a 600
127.0.0.1:6379[4]> del bbb

另一個客戶端執(zhí)行monitor命令,則可以看到所有的操作命令

以上為Redis基本操作命令。

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2024-03-01 08:13:45

Shell編程解釋器

2024-09-26 09:10:08

2024-10-28 00:00:03

IP屬地地址

2023-03-30 08:26:31

DNSTCPUDP

2022-10-24 09:55:32

ESLintJavaScript

2022-11-02 07:37:07

WebAssembl瀏覽器服務(wù)器

2023-03-31 08:16:39

CDN網(wǎng)絡(luò)數(shù)據(jù)

2021-09-03 05:03:58

模塊命令項目

2022-08-29 08:05:44

Go類型JSON

2023-04-14 09:04:07

測試TDBF單元測試

2024-01-02 12:05:26

Java并發(fā)編程

2023-08-01 12:51:18

WebGPT機器學(xué)習(xí)模型

2023-01-10 08:43:15

定義DDD架構(gòu)

2024-02-04 00:00:00

Effect數(shù)據(jù)組件

2023-07-26 13:11:21

ChatGPT平臺工具

2024-01-19 08:25:38

死鎖Java通信

2022-06-16 07:50:35

數(shù)據(jù)結(jié)構(gòu)鏈表

2022-12-06 07:53:33

MySQL索引B+樹

2023-07-30 22:29:51

BDDMockitoAssert測試

2023-10-06 14:49:21

SentinelHystrixtimeout
點贊
收藏

51CTO技術(shù)棧公眾號