redis-安裝和簡單配置

yum install redis
  • 設置登錄密碼
vim /etc/redis.conf

找到
#requirepass foobared

去掉註釋

修改foobared爲自己要設置的密碼

requirepass myRedis

改端口和主機

# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.

port 16379

# If you want you can bind a single interface, if the bind option is not
# specified all the interfaces will listen for incoming connections.
# default is 127.0.0.1

bind 182.92.226.14
  • 查看版本號
> redis-cli -h 182.92.226.14 -p 16379 -a pfty1-redis info | grep 'redis_version'
> redis_version:2.4.10

常用命令

  • set
在 Redis 2.6.12 以前版本, SET 命令總是返回 OK 。
從 Redis 2.6.12 版本開始, SET 在設置操作成功完成時,才返回 OK 

> set ket "value"
- 
> get key
-
> set key "new value"
-
> get key
  • get
Redis Get 命令用於獲取指定 key 的值。
如果 key 不存在,返回 nil 。
如果key 儲存的值不是字符串類型,返回一個錯誤。


redis> GET db
(nil)

redis> SET db redis
OK

redis> GET db
"redis"


# 對不是字符串類型的 key 進行 GET

redis> DEL db
(integer) 1

redis> LPUSH db redis mongodb mysql
(integer) 3

redis> GET db
(error) ERR Operation against a key holding the wrong kind of value
  • getrange
Redis Getrange 命令用於獲取存儲在指定 key 中字符串的子字符串。
字符串的截取範圍由 startend 兩個偏移量決定(包括 startend 在內)。

語法
redis Getrange 命令基本語法如下:

redis 127.0.0.1:6379> GETRANGE KEY_NAME start end
可用版本
>= 2.4.0

返回值
截取得到的子字符串。

實例
首先,設置 mykey 的值並截取字符串。

redis 127.0.0.1:6379> SET mykey "This is my test key"
OK
redis 127.0.0.1:6379> GETRANGE mykey 0 3
"This"
redis 127.0.0.1:6379> GETRANGE mykey 0 -1
"This is my test key"
  • getset
Redis Getset 命令用於設置指定 key 的值,並返回 key 舊的值。

語法
redis Getset 命令基本語法如下:

redis 127.0.0.1:6379> GETSET KEY_NAME VALUE
可用版本
>= 1.0.0

返回值
返回給定 key 的舊值。 當 key 沒有舊值時,即 key 不存在時,返回 nil 。

當 key 存在但不是字符串類型時,返回一個錯誤。

實例
首先,設置 mykey 的值並截取字符串。

redis 127.0.0.1:6379> GETSET mynewkey "This is my test key"
(nil)
redis 127.0.0.1:6379> GETSET mynewkey "This is my new value to test getset"
"This is my test key"
  • getbit
Redis Getbit 命令用於對 key 所儲存的字符串值,獲取指定偏移量上的位(bit)。

語法
redis Getbit 命令基本語法如下:

redis 127.0.0.1:6379> GETBIT KEY_NAME OFFSET
可用版本
>= 2.2.0

返回值
字符串值指定偏移量上的位(bit)。

當偏移量 OFFSET 比字符串值的長度大,或者 key 不存在時,返回 0 。

實例
# 對不存在的 key 或者不存在的 offset 進行 GETBIT, 返回 0

redis> EXISTS bit
(integer) 0

redis> GETBIT bit 10086
(integer) 0


# 對已存在的 offset 進行 GETBIT

redis> SETBIT bit 10086 1
(integer) 0

redis> GETBIT bit 10086
(integer) 1
  • mget
Redis Mget 命令返回所有(一個或多個)給定 key 的值。 如果給定的 key 裏面,有某個 key 不存在,那麼這個 key 返回特殊值 nil 。

語法
redis Mget 命令基本語法如下:

redis 127.0.0.1:6379> MGET KEY1 KEY2 .. KEYN
可用版本
>= 1.0.0

返回值
一個包含所有給定 key 的值的列表。

實例
redis 127.0.0.1:6379> SET key1 "hello"
OK
redis 127.0.0.1:6379> SET key2 "world"
OK
redis 127.0.0.1:6379> MGET key1 key2 someOtherKey
1) "Hello"
2) "World"
3) (nil)
  • setbit
Redis Setbit 命令用於對 key 所儲存的字符串值,設置或清除指定偏移量上的位(bit)。

語法
redis Setbit 命令基本語法如下:

redis 127.0.0.1:6379> Setbit KEY_NAME OFFSET
可用版本
>= 2.2.0

返回值
指定偏移量原來儲存的位。

實例
redis> SETBIT bit 10086 1
(integer) 0

redis> GETBIT bit 10086
(integer) 1

redis> GETBIT bit 100   # bit 默認被初始化爲 0
(integer) 0
  • setex
Redis Setex 命令爲指定的 key 設置值及其過期時間。
如果 key 已經存在, SETEX 命令將會替換舊的值。

語法
redis Setex 命令基本語法如下:

redis 127.0.0.1:6379> SETEX KEY_NAME TIMEOUT VALUE
可用版本
>= 2.0.0

返回值
設置成功時返回 OK 。

實例
redis 127.0.0.1:6379> SETEX mykey 60 redis
OK
redis 127.0.0.1:6379> TTL mykey
60
redis 127.0.0.1:6379> GET mykey
"redis
  • setnx
Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在時,爲 key 設置指定的值。

語法
redis Setnx 命令基本語法如下:

redis 127.0.0.1:6379> SETNX KEY_NAME VALUE
可用版本
>= 1.0.0

返回值
設置成功,返回 1 。 設置失敗,返回 0 。

實例
redis> EXISTS job                # job 不存在
(integer) 0

redis> SETNX job "programmer"    # job 設置成功
(integer) 1

redis> SETNX job "code-farmer"   # 嘗試覆蓋 job ,失敗
(integer) 0

redis> GET job                   # 沒有被覆蓋
"programmer"
  • setrange
Redis Setrange 命令用指定的字符串覆蓋給定 key 所儲存的字符串值,
覆蓋的位置從偏移量 offset 開始。

語法
redis Setrange 命令基本語法如下:

redis 127.0.0.1:6379> SETRANGE KEY_NAME OFFSET VALUE
可用版本
>= 2.2.0

返回值
被修改後的字符串長度。

實例
redis 127.0.0.1:6379> SET key1 "Hello World"
OK
redis 127.0.0.1:6379> SETRANGE key1 6 "Redis"
(integer) 11
redis 127.0.0.1:6379> GET key1
"Hello Redis"
  • strlen
Redis Strlen 命令用於獲取指定 key 所儲存的字符串值的長度。
當 key 儲存的不是字符串值時,返回一個錯誤。

語法
redis Strlen 命令基本語法如下:

redis 127.0.0.1:6379> STRLEN KEY_NAME
可用版本
>= 2.2.0

返回值
字符串值的長度。 當 key 不存在時,返回 0。

實例
# 獲取字符串的長度

redis> SET mykey "Hello world"
OK

redis> STRLEN mykey
(integer) 11


# 不存在的 key 長度爲 0

redis> STRLEN nonexisting
(integer) 0
  • mset
Redis Mset 命令用於同時設置一個或多個 key-value 對。

語法
redis Mset 命令基本語法如下:

redis 127.0.0.1:6379> MSET key1 value1 key2 value2 .. keyN valueN 
可用版本
>= 1.0.1

返回值
總是返回 OK 。

實例
redis 127.0.0.1:6379> MSET key1 "Hello" key2 "World"
OK
redis 127.0.0.1:6379> GET key1
"Hello"
redis 127.0.0.1:6379> GET key2
1) "World"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章