01Redis簡介
REmote DIctionary Server(Redis) 是一個由Salvatore Sanfilippo寫的key-value存儲系統。
Redis是一個開源的使用ANSI C語言編寫、遵守BSD協議、支持網絡、可基於內存亦可持久化的日志型、Key-Value數據庫,並提供多種語言的API。
它通常被稱為數據結構服務器,因為值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。
02Redis的安裝
-
將Redis的tar(源碼包)包放到某個文件夾下
-
將tar包解壓縮,使用以下命令
tar -zxvf redis-4.0.6.tar.gz
3.安裝編譯Redis使用以下命令
cd redis-2.6.14
make PREFIX=/usr/local/redis install
在執行過程可能會遇到以下錯誤:
>>提示1:
make[3]: gcc:命令未找到
>>解決方案
yum -y install gcc-c++
>>提示2:
在包含自 adlist.c:34 的文件中:
zmalloc.h:50:31: 錯誤:jemalloc/jemalloc.h:沒有那個文件或目錄
zmalloc.h:55:2: 錯誤:#error "Newer version of jemalloc required"
>>解決方案
make的時候加上 MALLOC=libc 參數
make PREFIX=/usr/local/redis MALLOC=libc install
-
復制配置文件到redis目錄
redis目錄:
Redis.conf配置文件常見配置
(1)bind如果開啟只能本機連接,如果注釋掉任何可以連接。
(2)將redis進程變成后台進程,不占用我的客戶端
-
設置密碼認證
03啟動Redis服務
后台進程啟動成功界面
-
啟動redis服務
-
登錄redis
04Redis基礎命令
Redis的keys命令
Keys * 查詢所有
keys home 精確查找
keys h* 模糊查找
DEL key
該命令用於在 key 存在時刪除 key。
DUMP key
序列化給定 key ,並返回被序列化的值。
EXISTS key
檢查給定 key 是否存在。
EXPIRE key seconds
為給定 key 設置過期時間。
EXPIREAT key timestamp
EXPIREAT 的作用和 EXPIRE 類似,都用於為 key 設置過期時間。 不同在於 EXPIREAT 命令接受的時間參數是 UNIX 時間戳(unix timestamp)。
PEXPIRE key milliseconds
設置 key 的過期時間以毫秒計。
PEXPIREAT key milliseconds-timestamp
設置 key 過期時間的時間戳(unix timestamp) 以毫秒計
KEYS pattern
查找所有符合給定模式( pattern)的 key 。
MOVE key db
將當前數據庫的 key 移動到給定的數據庫 db 當中。
PERSIST key
移除 key 的過期時間,key 將持久保持。
PTTL key
以毫秒為單位返回 key 的剩余的過期時間。
TTL key
以秒為單位,返回給定 key 的剩余生存時間(TTL, time to live)。
RANDOMKEY
從當前數據庫中隨機返回一個 key 。
RENAME key newkey
修改 key 的名稱
RENAMENX key newkey
僅當 newkey 不存在時,將 key 改名為 newkey 。
TYPE key
返回 key 所儲存的值的類型。
Redis字符串命令
1
SET key value
設置指定 key 的值2
GET key
獲取指定 key 的值。3
GETRANGE key start end
返回 key 中字符串值的子字符4
GETSET key value
將給定 key 的值設為 value ,並返回 key 的舊值(old value)。5
GETBIT key offset
對 key 所儲存的字符串值,獲取指定偏移量上的位(bit)。6
MGET key1 [key2..]
獲取所有(一個或多個)給定 key 的值。7
SETBIT key offset value
對 key 所儲存的字符串值,設置或清除指定偏移量上的位(bit)。8
SETEX key seconds value
將值 value 關聯到 key ,並將 key 的過期時間設為 seconds (以秒為單位)。9
SETNX key value
只有在 key 不存在時設置 key 的值。10
SETRANGE key offset value
用 value 參數覆寫給定 key 所儲存的字符串值,從偏移量 offset 開始。11
STRLEN key
返回 key 所儲存的字符串值的長度。12
MSET key value [key value ...]
同時設置一個或多個 key-value 對。13
MSETNX key value [key value ...]
同時設置一個或多個 key-value 對,當且僅當所有給定 key 都不存在。14
PSETEX key milliseconds value
這個命令和 SETEX 命令相似,但它以毫秒為單位設置 key 的生存時間,而不是像 SETEX 命令那樣,以秒為單位。15
INCR key
將 key 中儲存的數字值增一。16
INCRBY key increment
將 key 所儲存的值加上給定的增量值(increment) 。17
INCRBYFLOAT key increment
將 key 所儲存的值加上給定的浮點增量值(increment) 。18
DECR key
將 key 中儲存的數字值減一。19
DECRBY key decrement
key 所儲存的值減去給定的減量值(decrement) 。20
APPEND key value
如果 key 已經存在並且是一個字符串, APPEND 命令將 value 追加到 key 原來的值的末尾。