1. 程式人生 > >redis安裝,主從同步

redis安裝,主從同步

一,redis安裝

redis是一個key-value儲存系統。和Memcached類似,它支援儲存的value型別相對更多,包括string(字串)、list(連結串列)、set(集合)、zset(sorted set --有序集合)和hash(雜湊型別)。這些資料型別都支援push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支援各種不同方式的排序。與memcached一樣,為了保證效率,資料都是快取在記憶體中。區別的是redis會週期性的把更新的資料寫入磁碟或者把修改操作寫入追加的記錄檔案,並且在此基礎上實現了master-slave(主從)同步。

1,yum安裝redis

#前提得配置好阿里雲yum源,epel源
#檢視是否有redis包
yum list redis
#安裝redis
yum install redis -y
#安裝好,啟動redis
systemctl start redis

檢測redis是否工作

redis-cli    #redis 客戶端工具
#進入互動式環境後,執行ping,返回pong表示安裝成功
127.0.0.1:6379> ping
PONG

2,原始碼安裝redis,編譯安裝

編譯安裝的優勢是:

  • 編譯安裝時可以指定擴充套件的module(模組),php、apache、nginx都是一樣有很多第三方擴充套件模組,如mysql,編譯安裝時候,如果需要就定製儲存引擎(innodb,還是MyIASM)
  • 編譯安裝可以統一安裝路徑,linux軟體約定安裝目錄在/opt/下面
  • 軟體倉庫版本一般比較低,編譯原始碼安裝可以根據需求,安裝最新的版本
1.下載redis原始碼
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解壓縮
tar -zxf redis-4.0.10.tar.gz
3.切換redis原始碼目錄
cd redis-4.0.10.tar.gz
4.編譯原始檔
make 
5.編譯好後,src/目錄下有編譯好的redis指令
6.make install 安裝到指定目錄,預設在/usr/local/bin

redis可執行檔案

./redis-benchmark //用於進行redis效能測試的工具
./redis-check-dump //用於修復出問題的dump.rdb檔案
./redis-cli //redis的客戶端
./redis-server //redis的服務端
./redis-check-aof //用於修復出問題的AOF檔案
./redis-sentinel //用於叢集管理

啟動redis服務端

啟動redis非常簡單,直接./redis-server就可以啟動服務端了,還可以用下面的方法指定要載入的配置檔案:
./redis-server ../redis.conf
預設情況下,redis-server會以非daemon的方式來執行,且預設服務埠為6379。

使用redis客戶端

#執行客戶端命令即可進入
./redis-cli  
#測試是否連線上redis
127.0.0.1:6379 > ping
返回pong代表連線上了

//用set來設定key、value
127.0.0.1:6379 > set name "glh"
OK
//get獲取name的值
127.0.0.1:6379 > get name
"glh"

二,redis資料結構

redis是一種高階的key:value儲存系統,其中value支援五種資料型別
字串(strings)
雜湊(hashes)
列表(lists)
集合(sets)
有序集合(sorted sets)

詳情:https://www.cnblogs.com/glh-ty/p/9727458.html

三,centos下redis安全相關

為了防止遭遇挖礦病毒的攻擊

我們在使用redis時候,最好更改預設埠,並且使用redis密碼登入。

redis.conf設定

protected-mode yes   #開啟保護模式
port 6380  #更改預設啟動埠
requirepass xxxxxx   #設定redis啟動密碼,xxxx是自定義的密碼
daemonize yes  # 讓redis-server在後端執行  或者啟動時 redis-server  redis,conf  &

啟動redis服務端

redis-server /opt/redis-4.0.10/redis.conf &     #指定配置檔案啟動redis,且後臺啟動

使用密碼登入redis,使用6380埠

方法1,使用這個

[[email protected]_python ~ 09:48:41]#redis-cli -p 6380
127.0.0.1:6380> auth xxxx
OK

方法2,此方案不安全,容易暴露密碼

[[email protected]_python ~ 09:49:46]#redis-cli -p 6380 -a xxxx
Warning: Using a password with '-a' option on the command line interface may not be safe.
127.0.0.1:6380> ping
PONG

檢查redis是否設定了密碼

127.0.0.1:6380> CONFIG get requirepass
1) "requirepass"
2) "xxxxxx"

如果沒有,也可以給redis設定密碼(命令方式)

CONFIG set requirepass "xxxxxx"

因此你的redis就不容易被黑客入侵了。

四,redis主從同步

 

1.安裝好master、slave兩個節點的redis

2.檢查master配置檔案

#檢視配置檔案有用資訊行
egrep -v '#|^$' /etc/redis.conf
#主要修改的幾行
bind 192.168.119.10 #填寫本機ip地址
daemonize yes #設定後臺程序方式執行

3.檢查設定slave配置檔案

bind 192.168.119.11 
daemonize yes
slaveof 192.168.119.10 6379 #填寫master的ip埠

masterauth xxxx  # 如果你的master機器上的redis有密碼,這裡就需要配置master機器上redis的密碼

4.在master、slave皆啟動redis服務,指定配置檔案

redis-server /etc/redis.conf

5.在master上設定key,去slave上檢查資料,完成簡單的主從複製配置