Redis客戶端鏈接以及持久化數據

1、介紹


以前咱們講解了Redis的結構與指令,其實很簡單,我也沒有過多的講解,此次咱們講解一下Redis鏈接客戶端以及持久化方案。redis

一、上文中咱們針對redis的數據操做都是在服務器中使用命令執行的,固然這個也是很是安全的處理方式,那麼在開發的階段爲了方便咱們但是使用可視化界面鏈接redis,安全

好比RedisDesktopManager 這個軟件等,方便咱們快速的操做數據,下面的介紹也是依據這個軟件進行的。服務器

二、 針對與Redis 你們確定也知道,redis的數據是保存在內存的,可是一旦把redis關閉則數據就會丟失,爲了防止數據丟失,那麼我就須要數據持久化到硬盤上,在此提供了兩種持久化方案:app

第一種是 RDB 快照的形式,第二種是 AOF 相似日誌追加的方式。異步

那麼我就快速的帶你們瞭解一下工具

2、Redis客戶端鏈接


一、前提說明一下:此方案只容許測試的時候配置,其餘狀況禁止使用測試

二、咱們進入Redis的文件夾中,新建一個redis配置文件,文件名爲: redis.custom.conf,而後在裏面以下內容:ui

配置中的bind 表明綁定 本服務器的IP,在生產環境中禁止使用 0.0.0.0 ,此IP表明服務器內全部的IP均可以被外網進行鏈接;在生產環境中咱們推薦使用綁定具體的內網IP,如個人IP爲:192.168.250.132spa

daemonize yes
port 6666
requirepass 123
logfile ./redislog_louie.log
dir ./
bind 192.168.250.132 127.0.0.1  #  0.0.0.0

 三、此處個人redis端口爲6666,若是你們沒有關閉防火牆,則須要在防火牆中開啓端口經過,容許端口6666的經過。3d

配置完成後咱們保存而後啓動。

./src/redis-server redis.custom.conf

而後咱們使用 可視化工具鏈接一下咱們的redis,發現鏈接成功,那麼我就能夠直接進行增刪改查的數據操做啦。

 操做數據

 

 redis客戶端已說明完,下面就是最重要的redis持久化。

3、Redis持久化方案


一、redis持久化有兩種方案,一種是RDB,一種是AOF

二、RDB數據持久化

 1)說明:RDB是總體快照備份同樣,就像咱們系統進行鏡像的備份這種快照處理,固然看到這個你們應該會有一個問題,這樣備份效率相對比較慢,並且一次備份數據比較大,因此官方也不推薦使用此方案進行數據持久化,但咱們還得結合實際狀況使用,像

redis主從複製的原理底層數據就是經過RDB。

  2)觸發RDB的方式有兩種:

  save 同步保存

  bgsave 異步保存

話很少說咱們配置一下RDB

daemonize yes
port 6666
requirepass 123
logfile ./redislog_louie.log
dir ./
bind 192.168.250.132 127.0.0.1 #  0.0.0.0

save 20 1  # 自動保存策略,20秒內有一個key發生變化就自動保存
dbfilename rdb_louie.rdb  #  rdb文件名
stop-writes-on-bgsave-error yes #  發生錯誤中斷寫入,建議開啓
rdbcompression yes  # 數據文件壓縮,建議開啓
rdbchecksum yes # 開啓crc64錯誤校驗,建議開啓

保存,運行一下咱們的redis,就能夠看到咱們產生的rdb 文件了。

三、AOF數據持久化(推薦方案)

說明:日誌追加數據持久化,即在原先的數據基礎上進行追加,而不是徹底覆寫,這樣效率高。

注:若是RDB與AOF同時存在的狀況下,redis默認優先使用AOF進行數據恢復。

AOF的配置以下:

daemonize yes
port 6666
requirepass 123
logfile ./redislog_louie.log
dir ./
bind 192.168.250.132 127.0.0.1 # 0.0.0.0

appendonly yes  # 開啓aof
appendfilename aof_louie.aof  # aof 日誌文件名
appendfsync everysec  #  每秒記錄一第二天志,建議everysec
no-appendfsync-on-rewrite yes  # 重寫過程當中是否向日志文件寫入,yes 表明rewrite過程當中,不向aof文件中追加信息,rewrite結束後再寫入,no 表明rewrite執行的同時,也向aof追加信息
auto-aof-rewrite-percentage 100 # 觸發重寫文件增加百分比 默認100%
auto-aof-rewrite-min-size 64mb  # 觸發重寫最小aof文件尺寸

看到上面的配置,你們會有疑問,爲何會有 重寫,主要是由於要壓縮數據,產生的文件更小,防止一樣的相同命令佔用空間,好比以下:用最簡短的命令來操做數據

重寫說明

至此,數據持久化已經都介紹完後 

4、總結


redis的持久化方案建議採用AOF,高效便捷。下一篇文章咱們就要進行redis高可用的介紹。

若是針對上面有任何問題,歡迎留言諮詢。

相關文章
相關標籤/搜索