redis命令操作以及持久化

2021-09-19 10:02:32 字數 2779 閱讀 4188

命令操作

1. redis的資料結構:

* redis儲存的是:key,value格式的資料,其中key都是字串,value有5種不同的資料結構

* value的資料結構:

1) 字串型別 string

2) 雜湊型別 hash : map格式  

3) 列表型別 list : linkedlist格式。支援重複元素

4) 集合型別 set  : 不允許重複元素

5) 有序集合型別 sortedset:不允許重複元素,且元素有順序

2. 字串型別 string

1. 儲存: set key value

127.0.0.1:6379> set username zhangsan

ok2. 獲取: get key

127.0.0.1:6379> get username

"zhangsan"

3. 刪除: del key

127.0.0.1:6379> del age

(integer) 1

3. 雜湊型別 hash

1. 儲存: hset key field value

127.0.0.1:6379> hset myhash username lisi

(integer) 1

127.0.0.1:6379> hset myhash password 123

(integer) 1

2. 獲取: 

* hget key field: 獲取指定的field對應的值

127.0.0.1:6379> hget myhash username

"lisi"

* hgetall key:獲取所有的field和value

127.0.0.1:6379> hgetall myhash

1) "username"

2) "lisi"

3) "password"

4) "123"

3. 刪除: hdel key field

127.0.0.1:6379> hdel myhash username

(integer) 1

4. 列表型別 list:可以新增乙個元素到列表的頭部(左邊)或者尾部(右邊)

1. 新增:

1. lpush key value: 將元素加入列表左表

2. rpush key value:將元素加入列表右邊

127.0.0.1:6379> lpush mylist a

(integer) 1

127.0.0.1:6379> lpush mylist b

(integer) 2

127.0.0.1:6379> rpush mylist c

(integer) 3

2. 獲取:

* lrange key start end :範圍獲取

127.0.0.1:6379> lrange mylist 0 -1

1) "b"

2) "a"

3) "c"

3. 刪除:

* lpop key: 刪除列表最左邊的元素,並將元素返回

* rpop key: 刪除列表最右邊的元素,並將元素返回

5. 集合型別 set : 不允許重複元素

1. 儲存:sadd key value

127.0.0.1:6379> sadd myset a

(integer) 1

127.0.0.1:6379> sadd myset a

(integer) 0

2. 獲取:smembers key:獲取set集合中所有元素

127.0.0.1:6379> smembers myset

1) "a"

3. 刪除:srem key value:刪除set集合中的某個元素    

127.0.0.1:6379> srem myset a

(integer) 1

6. 有序集合型別 sortedset:不允許重複元素,且元素有順序.每個元素都會關聯乙個double型別的分數。redis正是通過分數來為集合中的成員進行從小到大的排序。

1. 儲存:zadd key score value

127.0.0.1:6379> zadd mysort 60 zhangsan

(integer) 1

127.0.0.1:6379> zadd mysort 50 lisi

(integer) 1

127.0.0.1:6379> zadd mysort 80 wangwu

(integer) 1

2. 獲取:zrange key start end [withscores]

127.0.0.1:6379> zrange mysort 0 -1

1) "lisi"

2) "zhangsan"

3) "wangwu"

127.0.0.1:6379> zrange mysort 0 -1 withscores

1) "zhangsan"

2) "60"

3) "wangwu"

4) "80"

5) "lisi"

6) "500"

3. 刪除:zrem key value

127.0.0.1:6379> zrem mysort lisi

(integer) 1

7. 通用命令

1. keys * : 查詢所有的鍵

2. type key : 獲取鍵對應的value的型別

3. del key:刪除指定的key value

Redis持久化操作

rdb 在指定的時間間隔內,將記憶體中的資料集快照寫入磁碟,它恢復時,是將快照檔案直接讀到記憶體裡。aof是以日誌的方式記錄寫操作,備份如何進行的 redis會單獨建立乙個子程序來進行初始化,會先將資料寫入到乙個臨時檔案內,待持久化過程都結束了,再用這個臨時檔案替換上次持久化好的檔案,整個過程中,主...

redis的持久化操作

redis持久化操作 redis資料儲存在記憶體中,為了保證redis重啟後資料的完整,redis的持久化 一 rdb方式 二 aof方式 使用redis持久化的方式 rdb持久化方式 預設的 不需要配置 在指定的時間內間隔內將記憶體的資料以及快照寫入磁碟中 指定多少秒將資料寫入磁碟中 aof持久化...

redis持久化 AOF持久化

1.aof持久化原理 aof持久化會將被執行的寫命令寫到aof檔案的末尾。在恢復的時候,redis只要從頭到尾重新執行一次aof檔案包含的所有寫命令 2.配置選項 固態硬碟禁用always選項,在某些情況頻繁讀寫會大大降低固態硬碟的壽命 4.aof檔案的重寫和壓縮 aof檔案裡面記錄了所有的命令而不...