Redis 入門指導

2021-09-02 04:11:21 字數 2545 閱讀 7775

1) redis簡介

redis 是乙個開源的使用ansi c語言編寫、支援網路、可基於記憶體亦可持久化的日誌型、

key-value資料庫。

2) redis之資料型別

redis支援資料型別包括string、list、set、sorted set和hash。

2.1 key 相關命令

exists key 測試指定的key是否存在,存在返回1,不存在返回0

del key1 key2...keyn 刪除指定的key, 返回刪除key的數目,0表示指定key都不存在

type key 返回給定key的value型別。返回none表示不存在key,string字元型別,list鍊錶型別,set無序集合型別...

keys pattern 返回匹配指定模式的所有key

randomkey 返回從當前資料庫中隨機選擇的乙個key,如果當前資料庫是空的,返回空串

rename oldkey newkey 原子的重新命名乙個key,如果newkey存在,將會被覆蓋,返回1表示成功,0表示失敗。可能是oldkey存在或者和newkey相同

renamenx olekey newkey 同上,但是如果newkey存在返回失敗

dbsize 返回當前資料庫key的數量

expire key seconds 為key指定過期時間,單位是秒。返回1成功,0表示key已過期或不存在

ttl key 返回設定過期時間的key的剩餘過期秒數 -1表示key不存在或者沒有設定過期時間

select db-index 通過索引選擇資料庫,預設連線的資料庫所有是0,預設資料庫個數是16個。返回1表示成功,0失敗

move key db-index 將key從當前資料庫移動到指定資料庫。返回1表示成功,0如果key不存在,或者已經在指定資料庫中

flushdb 刪除當前資料庫中所有key,此方法不會失敗。

flushall 刪除所有資料庫中的所有key,此方法不會失敗,更慎用。

2.2 string型別

string 是redis最基本的型別,而且string型別是二進位制安全的。意思是redis的string可以包含任何數。比如jpg或者序列化的物件。

redis操作string型別:

set key value 設定key對應的值為string型別的value,返回1表示成功,0失敗

setnx key value 同上,如果key已經存在,返回0。nx是not exists的意思

get key 獲取key對應的string值,並返回key的舊值。如果key不存在返回nil

getset key value 原子的設定key的值,並返回key的舊值。如果key不存在返回nil

mget key1 key2 ... keyn 一次獲取多個key的值,如果對應key不存在,則對應返回nil

mset key1 value1 ... keyn valuen 一次設定多個key的值,成功返回1表示所有的值都設定了,失敗返回0表示沒有任何值被設定

msetnx key1 value1 ... keyn valuen 同上,但是不會覆蓋已經存在的key

incr key 對key的值做加加操作,並返回新的值。注意incr乙個不是int的value會返回錯誤,incr乙個不存在的key,則設定key為1

decr key 同上,但是做的是減減操作,decr乙個不存在key,則設定key為-1

incrby key inte 同incr 加指定值,key不存在時候會設定key,並認為原來的value是0

substr key start end 返回擷取過的key的字串值,注意並不修改key的值,下標是從0開始的

2.3 list型別

redis的list的型別其實就是每個子元素都是string型別的雙向鍊錶。所以[lr]push和[lr]pop命令的演算法時間複雜度都是0.

list相關命令:

lpush key stri在key對應的list的頭部新增字串元素,返回1表示成功,0表示key存在且不是list.

rpush key str同上,在尾部新增

llen key 返回key對應list的長度,key不存在返回0,如果key對應的型別不是list返回錯誤

lrange key start end 返回指定區間內的元素,下標從0開始,負值表示從後面計算,-1表示倒數第乙個元素。key不存在返回空列表

ltrim key start end 擷取list保留指定區間內的元素,成功返回1,key不存在返回錯誤

lset key index value 設定list中指定下標的元素值,成功返回1,key或者下標不存在返回錯誤

lrem key count value 從key對應的list中刪除count個和value相同的元素,count為0時候刪除全部

lpop key 從list的頭部刪除元素,並返回刪除元素。如果key對應的list不存在或者是空返回nil,如果key對應值不是list返回錯誤

rpop key 同上,但是從尾部刪除

Nginx入門指導

這是乙個關於nginx的基本介紹以及你能用它做一些簡單的工作的描述。現在假定你已經把nginx安裝到你的機器上了。如果你還沒有安裝的話,請參考下面這篇文章 centos環境下安裝nginx 或者nginx的官方安裝指導。通過這個指導,你可以了解到如何啟動 暫停 以及重新啟動nginx,這個指定也會講...

安全入門指導

首先給大家看一些安全腦圖,對安全方面有個基本認識和了解,下面三張圖分別是安全技能樹,區塊鏈專案安全和常見web安全常見漏洞。後面我分享了關於安全方面的 社群以及學習 學習方面的書籍,以及安全測試的一些工具和靶場系統,給入門的夥伴全面了解安全,當水平更高可以自己按照方向去學習。安全之路任重道遠,因為攻...

Sencha Touch 入門指導

b sencha touch 入門指導 b 1.介紹sencha touch 是乙個js框架.用於建立在基於觸控裝置的web應用.它使用html,css來提供和本地應用一樣效果的體驗,而不需要外掛程式.2.使用sencha touch url 建立html index.html 引入css ext ...