一闸盔、 Linux安裝redis
1. 版本
CentOS版本:CentOS Linux release 7.7.1908 (Core)
Redis版本:redis-5.0.9
2. 準(zhǔn)備文件
從官網(wǎng)下載tar.gz的安裝包
3. 配置安裝
將壓縮包上傳到自己準(zhǔn)備安裝的目錄下沛申,我這里放在了/usr/local/下面,使用tar –zxvf redis-5.0.9.tar.gz
命令解壓,解壓完成后,
使用gcc -v
判斷是否安裝gcc 如果沒有安裝如下圖:
安裝gcc命令:yum install -y gcc gcc-c++
已安裝如下圖:
進(jìn)入redis的目錄下熄赡,使用make MALLOC=libc
命令進(jìn)行編譯 然后 cd src
執(zhí)行 make install
Make編譯結(jié)束后,修改redis.conf配置文件
使用命令vi redis.conf
打開redis配置文件
將bind 127.0.0.1
注釋掉 說明:如果不注釋掉齿税,其他服務(wù)訪問不到
將protected-mode yes
改為no 說明:關(guān)閉保護(hù)模式
設(shè)置密碼requirepass <密碼>
說明:設(shè)置密碼
daemonize no
改為yes 說明:使用后臺(tái)啟動(dòng)
改完配置保存之后就可以啟動(dòng)了彼硫。
使用./src/redis-server redis.conf
命令加載指定配置啟動(dòng)redis服務(wù)
啟動(dòng)成功如下圖:
為了方便,我們可以使用后臺(tái)啟動(dòng),將redis.conf中的daemonize no改為yes 說明:使用后臺(tái)啟動(dòng)
如果redis設(shè)置密碼之后乌助,在使用redis.cli客戶端操作數(shù)據(jù)溜在,則需要認(rèn)證(認(rèn)證命令:auth <密碼>
),不認(rèn)證直接操作執(zhí)行操作數(shù)據(jù)命令會(huì)報(bào)如下圖所示錯(cuò)誤
二他托、 配置主從(master-slave)
1. 概述(一主兩從三哨兵)
主從復(fù)制可以是服務(wù)高可用,同時(shí)如果數(shù)據(jù)訪問量過大仆葡,也可以緩解讀取數(shù)據(jù)壓力赏参,能達(dá)到高可用,讀寫分離沿盅,服務(wù)宕機(jī)數(shù)據(jù)不丟失等目的
實(shí)現(xiàn)redis的主從復(fù)制有多種方式把篓,本文采用的是redis自帶的sentinel哨兵機(jī)制達(dá)到服務(wù)高可用及主從復(fù)制的目的
2. 配置主從復(fù)制
根據(jù)上面Linux安裝單機(jī)redis的步驟,安裝三臺(tái)redis腰涧;如果條件有限也可在一臺(tái)服務(wù)器啟動(dòng)三個(gè)不同端口的redis服務(wù)
配置redis主從很簡(jiǎn)單韧掩,只需要將主機(jī)的ip和端口配置到從機(jī)的redis.conf文件最后,重啟各個(gè)從節(jié)點(diǎn)的服務(wù)窖铡,主從復(fù)制配置就完成了
1) 配置命令:slaveof <主機(jī)ip> <端口>
例:slaveof 10.143.4.29 6379
(使用vi打開redis.conf后疗锐,使用shift+g就可以到達(dá)文件最后)
2)如果redis設(shè)置了密碼,則還需要配置密碼费彼,否則主從之間數(shù)據(jù)無法同步
打開該項(xiàng)注釋滑臊,添加主節(jié)點(diǎn)設(shè)置的密碼 masterauth <密碼>
3)設(shè)置從節(jié)點(diǎn)只讀,從節(jié)點(diǎn)添加 slave-read-only yes
4)指定日志文件打印位置 logfile "/data/redis/logs/redis.log"
從機(jī)服務(wù)全部啟動(dòng)成功后箍铲,打開每臺(tái)redis的客戶端(命令:./src/redis-cli
) 如果三臺(tái)redis服務(wù)使用不同端口在同一臺(tái)服務(wù)器上啟動(dòng)的雇卷,那么啟動(dòng)客戶端命令需要加對(duì)應(yīng)的端口號(hào)(命令:./src/redis-cli –c –p 6379
)
然后可以通過info replication
命令查看主從關(guān)系
我配置的主從關(guān)系如下圖:
可以使用命令測(cè)試一下,在主機(jī)上set name zs 然后在從機(jī)上get name 就可以看到數(shù)據(jù)已經(jīng)同步到從機(jī)上面了颠猴;
主機(jī)具有讀寫權(quán)限关划,從機(jī)只有讀的權(quán)限