亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis的安裝和實際應用

發布時間:2021-08-20 20:13:43 來源:億速云 閱讀:162 作者:chen 欄目:游戲開發

本篇內容介紹了“Redis的安裝和實際應用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一、Redis的安裝

下載安裝包,redis-3.2.9.tar.gz 網址:http://www.redis.cn/download.html
 
第一步:進入解壓 redis 的文件夾
 
 
第二步: 找到安轉程序文 Makefile
 
 
 Redis的安裝和實際應用
 
第三步: 執行 mkae 命令
第四步: 執行 make install
第五步: 修改 redis 的配置文件 redis.config (先備份一個原廠配置文件)
 
Redis的安裝和實際應用
 
 
進入 myredis 文件中修改運行模式為后臺運行,daemonize 修改成 yes
 
Redis的安裝和實際應用
 
啟動 redis 服務器,使用修改后配置文件的位置
 
命令: redis-server 配置文件的地址

 Redis的安裝和實際應用  
如果修改redis.conf,采用redis默認的redis.conf文件, redis默認只能通過127.0.0.1:6379這個地址訪問。這是由于redis有一個保護機制的存在,這樣就只能在本機上操作了,如果想要遠程操作就不可行了。這里需要修改redis.conf這個配置文件,在配置文件中添加本機ip地址,這里假如添加ip地址:192.168.78.100,只需在redis.conf這個配置文件中bind 127.0.0.1后面追加:
bind 127.0.0.1 192.168.78.100
客戶端連接:在命令行 輸入 cd /usr/local/bin
進入這個目錄 命令行輸入: ./redis-cli

 Redis的安裝和實際應用
命令格式:redis-cli –h host –p port –a 密碼

二、Redis的使用

1、 切換數據庫:

select databaseid 默認共有16個實例庫,登錄時是ID為0的數據庫,總共有16個

2、 Key 操作:

KEYS pattern
  查找所有符合給定模式 pattern 的 key 。
              EXISTS key
檢查給定 key 是否存在。
EXPIRE key seconds
為給定 key 設置生存時間,當 key 過期時(生存時間為 0 ),它會被自動刪除。
MOVE key db
將當前數據庫的 key 移動到給定的數據庫 db 當中。
如果當前數據庫(源數據庫)和給定數據庫(目標數據庫)有相同名字的給定 key ,或者 key 不存在于當前數據庫,那么 MOVE 沒有任何效果。
TTL key
以秒為單位,返回給定 key 的剩余生存時間
TYPE key
返回 key 所儲存的值的類型。
DEL key [key ...]
刪除給定的一個或多個 key 。不存在的 key 會被忽略。
 

3、String操作

SET key value [EX seconds] [PXmilliseconds] [NX|XX]
將字符串值 value 關聯到 key 。
如果 key 已經持有其他值, SET 就覆寫舊值,無視類型。
對于某個原本帶有生存時間(TTL)的鍵來說, 當 SET 命令成功在這個鍵上執行時, 這個鍵原有的 TTL 將被清除。
GET key
返回 key 所關聯的字符串值。如果 key 不存在那么返回特殊值 nil 。
假如 key 儲存的值不是字符串類型,返回一個錯誤,因為 GET 只能用于處理字符串值。
APPEND key value
如果 key 已經存在并且是一個字符串, APPEND 命令將 value 追加到 key 原來的值的末尾。
如果 key 不存在, APPEND 就簡單地將給定 key 設為 value ,就像執行 SET key value 一樣。
STRLEN key
返回 key 所儲存的字符串值的長度。
當 key 儲存的不是字符串值時,返回一個錯誤。
 
 
INCR key
將 key 中儲存的數字值增一。
如果 key 不存在,那么 key 的值會先被初始化為 0 ,然后再執行 INCR 操作。
如果值包含錯誤的類型,或字符串類型的值不能表示為數字,那么返回一個錯誤。
INCRBY key increment
將 key 所儲存的值加上增量 increment 。
如果 key 不存在,那么 key 的值會先被初始化為 0 ,然后再執行 INCRBY 命令。
如果值包含錯誤的類型,或字符串類型的值不能表示為數字,那么返回一個錯誤。
DECR key
將 key 中儲存的數字值減一。
DECRBY key decrement
將 key 所儲存的值減去減量 decrement 。
GETRANGE key start end
返回 key 中字符串值的子字符串,字符串的截取范圍由 start 和 end 兩個偏移量決定(包括 start 和 end 在內)。
負數偏移量表示從字符串最后開始計數, -1 表示最后一個字符, -2 表示倒數第二個,以此類推。
SETRANGE key offset value
用 value 參數覆寫(overwrite)給定 key 所儲存的字符串值,從偏移量 offset 開始。
不存在的 key 當作空白字符串處理。
SETEX key seconds value
將值 value 關聯到 key ,并將 key 的生存時間設為 seconds
如果 key 已經存在, SETEX 命令將覆寫舊值。
這個命令類似于以下兩個命令:
SET key value
EXPIRE key seconds  # 設置生存時間
不同之處是, SETEX 是一個原子性(atomic)操作,關聯值和設置生存時間兩個動作會在同一時間內完成,該命令在 Redis 用作緩存時,非常實用。
SETNX key value
將 key 的值設為 value ,當且僅當 key 不存在。
若給定的 key 已經存在,則 SETNX 不做任何動作。
SETNX 是『SET if Not eXists』(如果不存在,則 SET)的簡寫。
MGET key [key ...]
返回所有(一個或多個)給定 key 的值。
如果給定的 key 里面,有某個 key 不存在,那么這個 key 返回特殊值 nil 。因此,該命令永不失敗。
MSET key value [key value ...]
同時設置一個或多個 key-value 對。
如果某個給定 key 已經存在,那么 MSET 會用新值覆蓋原來的舊值,如果這不是你所希望的效果,請考慮使用 MSETNX 命令:它只會在所有給定 key 都不存在的情況下進行設置操作。
MSETNX key value [key value ...]
同時設置一個或多個 key-value 對,當且僅當所有給定 key 都不存在。
即使只有一個給定 key 已存在, MSETNX 也會拒絕執行所有給定 key 的設置操作。
MSETNX 是原子性的,因此它可以用作設置多個不同 key 表示不同字段(field)的唯一性邏輯對象(unique logic object),所有字段要么全被設置,要么全不被設置。

4、List 操作

LPUSH key value [value ...]
將一個或多個值 value 插入到列表 key 的表頭
如果有多個 value 值,那么各個 value 值按從左到右的順序依次插入到表頭: 比如說,對空列表 mylist 執行命令 LPUSH mylist a b c ,列表的值將是 c b a ,這等同于原子性地執行 LPUSH mylist a 、 LPUSH mylist b 和 LPUSH mylist c 三個命令。
RPUSH key value [value ...]
將一個或多個值 value 插入到列表 key 的表尾(最右邊)。
如果有多個 value 值,那么各個 value 值按從左到右的順序依次插入到表尾:比如對一個空列表 mylist 執行 RPUSH mylist a b c ,得出的結果列表為 a b c ,等同于執行命令 RPUSH mylist a 、 RPUSH mylist b 、 RPUSH mylist c 。
LRANGE key start stop
返回列表 key 中指定區間內的元素,區間以偏移量 start 和 stop 指定。
下標(index)參數 start 和 stop 都以 0 為底,也就是說,以 0 表示列表的第一個元素,以 1 表示列表的第二個元素,以此類推。
LPOP key
移除并返回列表 key 的頭元素。
RPOP key
移除并返回列表 key 的尾元素。
LINDEX key index
返回列表 key 中,下標為 index 的元素。
下標(index)參數 start 和 stop 都以 0 為底,也就是說,以 0 表示列表的第一個元素,以 1 表示列表的第二個元素,以此類推。
你也可以使用負數下標,以 -1 表示列表的最后一個元素, -2 表示列表的倒數第二個元素,以此類推。
LLEN key
返回列表 key 的長度。
如果 key 不存在,則 key 被解釋為一個空列表,返回 0 .
LREM key count value
根據參數 count 的值,移除列表中與參數 value 相等的元素。
count 的值可以是以下幾種:
count > 0 : 從表頭開始向表尾搜索,移除與 value 相等的元素,數量為 count 。
count < 0 : 從表尾開始向表頭搜索,移除與 value 相等的元素,數量為 count 的絕對值。
count = 0 : 移除表中所有與 value 相等的值。
LTRIM key start stop
對一個列表進行修剪(trim),就是說,讓列表只保留指定區間內的元素,不在指定區間之內的元素都將被刪除。
舉個例子,執行命令 LTRIM list 0 2 ,表示只保留列表 list 的前三個元素,其余元素全部刪除。
RPOPLPUSH source destination
命令 RPOPLPUSH 在一個原子時間內,執行以下兩個動作:
將列表 source 中的最后一個元素(尾元素)彈出,并返回給客戶端。
將 source 彈出的元素插入到列表 destination ,作為 destination 列表的的頭元素。
舉個例子,你有兩個列表 source 和 destination , source 列表有元素 a, b, c , destination 列表有元素 x, y, z ,執行 RPOPLPUSH sourcedestination 之后, source 列表包含元素 a, b , destination 列表包含元素 c, x, y, z ,并且元素 c 會被返回給客戶端。
LSET key index value
將列表 key 下標為 index 的元素的值設置為 value 。
當 index 參數超出范圍,或對一個空列表( key 不存在)進行 LSET 時,返回一個錯誤。
LINSERT key BEFORE|AFTER pivot value
將值 value 插入到列表 key 當中,位于值 pivot 之前或之后。
當 pivot 不存在于列表 key 時,不執行任何操作。
當 key 不存在時, key 被視為空列表,不執行任何操作。
 

5、Set操作

SADD key member [member ...]
將一個或多個 member 元素加入到集合 key 當中,已經存在于集合的 member 元素將被忽略。
假如 key 不存在,則創建一個只包含 member 元素作成員的集合。
SMEMBERS key
返回集合 key 中的所有成員。
不存在的 key 被視為空集合。
SISMEMBER key member
判斷 member 元素是否集合 key 的成員。
 
 
SCARD key
返回集合 key 的基數(集合中元素的數量)。
SREM key member [member ...]
移除集合 key 中的一個或多個 member 元素,不存在的 member 元素會被忽略。
SPOP key
移除并返回集合中的一個隨機元素。
如果只想獲取一個隨機元素,但不想該元素從集合中被移除的話,可以使用 SRANDMEMBER 命令。
SMOVE source destination member
將 member 元素從 source 集合移動到 destination 集合。
SMOVE 是原子性操作。
如果 source 集合不存在或不包含指定的 member 元素,則 SMOVE 命令不執行任何操作,僅返回 0 。否則, member 元素從 source 集合中被移除,并添加到 destination 集合中去。
當 destination 集合已經包含 member 元素時, SMOVE 命令只是簡單地將 source 集合中的 member 元素刪除。
當 source 或 destination 不是集合類型時,返回一個錯誤。
SDIFF key [key ...]
返回一個集合的全部成員,該集合是所有給定集合之間的差集。
SINTER key [key ...]
返回一個集合的全部成員,該集合是所有給定集合的交集。
不存在的 key 被視為空集。
當給定集合當中有一個空集時,結果也為空集(根據集合運算定律)。
SUNION key [key ...]
返回一個集合的全部成員,該集合是所有給定集合的并集。
不存在的 key 被視為空集。
 

6、Sorted set 操作

類似Sets,但是每個字符串元素都關聯到一個叫score浮動數值。里面的元素總是通過score進行著排序,所以不同的是,它是可以檢索的一系列元素。注意:在 set 基礎上,加上 score 值,之前 set 是 key value1 value2….
現在 Zset 是 key score1 value1 score2 value2
ZADD key score member [[score member] [score member] ...]
將一個或多個 member 元素及其 score 值加入到有序集 key 當中。
redis> ZADD page_rank 9 baidu.com 8 bing.com
(integer) 2
redis> ZRANGE page_rank 0 -1 WITHSCORES
1) "bing.com"
2) "8"
3) "baidu.com"
4) "9"
5) "google.com"
6) "10"
ZRANGE key start stop [WITHSCORES]
返回有序集 key 中,指定區間內的成員。
其中成員的位置按 score 值遞增(從小到大)來排序。
具有相同 score 值的成員按字典序(lexicographical order )來排列。
如果你需要成員按 score 值遞減(從大到小)來排列,請使用 ZREVRANGE 命令。
下標參數 start 和 stop 都以 0 為底,也就是說,以 0 表示有序集第一個成員,以 1 表示有序集第二個成員,以此類推。
你也可以使用負數下標,以 -1 表示最后一個成員, -2 表示倒數第二個成員,以此類推。
超出范圍的下標并不會引起錯誤。
比如說,當 start 的值比有序集的最大下標還要大,或是 start > stop 時, ZRANGE 命令只是簡單地返回一個空列表。
另一方面,假如 stop 參數的值比有序集的最大下標還要大,那么 Redis 將 stop 當作最大下標來處理。
可以通過使用 WITHSCORES 選項,來讓成員和它的 score 值一并返回,返回列表以 value1,score1, ..., valueN,scoreN 的格式表示。
 
ZREVRANGE key start stop [WITHSCORES]
返回有序集 key 中,指定區間內的成員。
其中成員的位置按 score 值遞減(從大到小)來排列。
ZREM key member [member ...]
移除有序集 key 中的一個或多個成員,不存在的成員將被忽略。
ZREMRANGEBYSCORE key min max
移除有序集 key 中,所有 score 值介于 min 和 max 之間(包括等于 min 或 max )的成員。
ZSCORE key member
返回有序集 key 中,成員 member 的 score 值。
ZCARD key
返回有序集 key 的基數。
ZCOUNT key min max
返回有序集 key 中, score 值在 min 和 max 之間(默認包括 score 值等于 min 或 max )的成員的數量。
ZRANK key member
返回有序集 key 中成員 member 的排名。其中有序集成員按 score 值遞增(從小到大)順序排列。

7、Hash操作

KV 模式不變,但是 V 是一個鍵值對
 
HSET key field value
將哈希表 key 中的域 field 的值設為 value 。
HGET key field
返回哈希表 key 中給定域 field 的值。
HMSET key field value [field value ...]
同時將多個 field-value (域-值)對設置到哈希表 key 中。
此命令會覆蓋哈希表中已存在的域。
HMGET key field [field ...]
返回哈希表 key 中,一個或多個給定域的值。
HGETALL key
返回哈希表 key 中,所有的域和值。
HKEYS key
返回哈希表 key 中的所有域。
HVALS key
返回哈希表 key 中所有域的值。
HSETNX key field value
將哈希表 key 中的域 field 的值設置為 value ,當且僅當域 field 不存在。
若域 field 已經存在,該操作無效。
HEXISTS key field
查看哈希表 key 中,給定域 field 是否存在。
HDEL key field [field ...]
刪除哈希表 key 中的一個或多個指定域,不存在的域將被忽略。
HINCRBY key field increment
為哈希表 key 中的域 field 的值加上增量 increment 。
增量也可以為負數,相當于對給定域進行減法操作。

“Redis的安裝和實際應用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南开区| 宁乡县| 封开县| 集安市| 桂林市| 岑巩县| 隆安县| 修文县| 宜宾市| 石首市| 平南县| 沈阳市| 吴旗县| 黄冈市| 克拉玛依市| 庆阳市| 光泽县| 临夏县| 泊头市| 武汉市| 门源| 宝坻区| 连江县| 岐山县| 称多县| 榆中县| 灵璧县| 公主岭市| 罗源县| 平定县| 大港区| 大新县| 闵行区| 民丰县| 洞口县| 溧水县| 安顺市| 天台县| 冕宁县| 北票市| 阳西县|