標籤:主從複製 資料同步 localhost src install 用戶端 order 狀態 efault
1. redis設定檔常用選項說明
daemonize no
說明:是否把redis-server啟動在後台,預設是“否”。若改成yes,會產生一個pid檔案。
pidfile /var/run/redis.pid
說明:redis-server的pid檔案。
port 6379
說明:redis-server的連接埠號碼
dbfilename dump.rdb
說明:資料庫檔案的位置,最好添加絕對路徑,若不添加時在啟動使用者的home目錄下。
slaveof
說明:設定主從伺服器的主伺服器的地址和連接埠。例如:slaveof192.168.1.1 6379
loglevel verbose
說明:記錄層級,有四種,debug,verbose,notice,warning。
logfile stdout
說明:日誌的輸出檔案,預設是標準輸出。例如:logfile/tmp/redis.log
2. 主從的安裝和配置
2.1 基本環境
假設我有兩台機器:
master: 192.168.1.116
slave: 192.168.1.145
.下載
使用的版本是: redis-3.2.1
>cd redis-3.2.1
>make
>sudo make install
2.2 安裝主伺服器
vim redis.conf
根據自己的需要修改一些參數
.修改磁碟上儲存資料庫檔案的位置:(沒修改)
dbfilename /redisdb/dump.rdb
.修改記錄層級
#如果只要輸出少量日誌的話,可以用waring(用的notice)
loglevel warning
.修改記錄檔的位置
logfile redis-3.2.1/data/logs/redis.log
.修改綁定地址(否則會出現:Error condition on socket for SYNC: Connection refused的錯誤記錄檔,從機無法串連到主機)
bind0.0.0.0
2.3 安裝和配置從機
vim redis.conf配置master的ip地址和redis-server的連接埠。
找到 #slaveof <masterip><masterport>這一行,在其下邊新增一行,如下
slaveof 192.168.1.116 6379 其中 192.168.1.116 6379分別表示master的IP地址和連接埠號碼。
3. 啟動和測試
主機: ./redis-server ../redis.conf
從機: ./redis-server ../redis_slave.conf
本測試在src目錄下啟動
注意: 若你使用./redis-server啟動伺服器則會報此警告,表示伺服器沒有按照你配置的redis.conf檔案啟動, Warning: no configfile specified, using the default config. In order to specify a config file use./src/redis-server /path/to/redis.conf ,所以要用./src/redis-server /path/to/redis.conf方式啟動。
3.1 測試
在主機上啟動redis用戶端:
在192.168.1.116master主機上啟動redis-cli用戶端並執行如下命令
>set name masteradd
>get name
"masteradd"
.登陸從機,並在從機上啟動用戶端:
在192.168.1.145 slave從機上啟動redis-cli用戶端並執行如下命令
>get name
"masteradd"
可以看到redis已經把資料同步過來了。
3.2 查看master主機狀態
進入redis-cli,使用如下命令
>info
可以看到,master主機的從機為192.168.1.145和其相關資訊。
停掉redis伺服器命令:redis-cli –hlocalhost –p 6379 shutdown
Redis主從複製配置及測試