NoSQL之Redis高級實用命令詳解--安全和主從複製

NoSQL之Redis高級實用命令詳解--安全和主從複製

NoSQL Redis   2014-01-09 22:52:47 發佈
您的評價:
     
0.0  
收藏      1收藏

1、安全性redis

爲redis設置密碼:設置客戶端鏈接後進行任何其餘指定前須要實用的密碼。數據庫

警告:由於redis速度很是快,因此在一臺較好的服務器下,一個外部用戶能夠在一秒鐘進行150k次的密碼嘗試,這意味着你須要指定很是很是強大的密碼來防止暴力破解。緩存

修改密碼的方法:安全

只須要在redis的配置文件redis.conf中開啓requirepass就能夠了,好比我設置個人訪問密碼是mypassword服務器

requirepass mypasswordui

在redis.conf中加入這一行代碼以後,咱們殺死原來的redis進程:pkill redis而後從新啓動redis:/usr/local/redis-2.8.1/src/redis-server /user/local/redis-2.8.1/redis.confspa

而後咱們用/usr/local/redis-2.8.1/src/redis-cli發現還能登錄進來,可是當咱們執行操做的時候,好比keys *就會以下錯誤:.net

127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.server

沒有必要的受權驗證。blog

在這裏redis支持兩種受權方式,一種就是直接用auth命令進行受權:

NoSQL之Redis高級實用命令詳解--安全和主從複製

第一次輸入了一個錯誤的密碼test,受權失敗,第二次輸入正確的密碼,返回ok,受權成功,以後就能夠進行全部的操做。

若是咱們不想每次登陸進來以後都要用auth進行受權,那麼咱們能夠採用另外一種受權方式,就是在登錄客戶端的時候用-a 來指定密碼

sh-3.2# /usr/local/redis-2.8.1/src/redis-cli -a mypassword

上面的密碼若是輸錯,也能進入,可是以後不能進行操做。須要用auth從新進行受權。

2、主從複製

Redis主從複製配置和使用都很是簡單。經過主從複製能夠容許多個slave server擁有和master server相同的數據庫副本。

redis主從複製的特色:

1.一臺master能夠擁有多個slave(1對多的關係)

2.多個slave能夠鏈接同一個master外,還能夠鏈接到其餘slave(這樣作的緣由是若是masterdown掉以後其中的一臺slave立馬能夠充當master的角色,這樣整個服務流程不受影響)

3.中從複製不會阻塞master,在同步數據的同時,master能夠繼續處理client請求。

4.提升系統的伸縮性

redis主從複製的過程:

1.slave與master創建鏈接,發送sync同步命令。

2.Master會啓動一個後臺進程,將數據庫快照保存到文件中,同時master主進程會開始收集新得寫命令並緩存。

3.後臺完成保存後,將文件發送給slave

4.slave將文件保存到硬盤上

配置主從服務器:

配置slave服務器很簡單,只須要在slave的配置文件中加入如下配置:

slaveof masterip masterport

若是主機開啓了登陸驗證,那麼還須要加入下面這句:

masterauth authpassword

而後啓動從機,首先主機會發快照給從機,從機的數據庫會更新到和主機相同的狀態,而後往主機裏寫內容,從機也會隨之更新。

若是咱們在從機上寫數據那麼會報錯:

(error) READONLY You can't write against a read only slave.

咱們能夠用info命令來查看主從服務器的信息,在從機上用info命令能夠看到

role:slave

master_host:masterip

master_port:masterport

master_link_status:up證實和主機處在鏈接狀態

在主機上用info命令

role:master

同時鏈接着幾臺從機

connected_slaves:1

同時能夠查看鏈接到主機上的從機的ip和在線狀態

slave0:ip=192.168.1.107,port=6379,state=online,offset=1709,lag=1

原文地址: http://blog.csdn.net/liutingxu1/article/details/17116107
相關文章
相關標籤/搜索