linux下安裝redis以及redis集群


解壓-linux下安裝redis

Redis是c語言開發的

安裝redis需要c語言的編譯環境。如果沒有gcc需要在線安裝。

*在linux下輸入安裝gcc

*解壓redis

*進入解壓后的redis目錄編譯

*編譯完成后在當前目錄安裝

PREFIX代表安裝到指定目錄

*進入安裝目錄下的bin目錄

這就代表安裝成功了

 

*前端啟動

在bin目錄下輸入./redis-server

看到這個就代表啟動成功了,但是啟動了之后不能進行其它操作了

 

*后台啟動(需要一個配置文件)

在redis的源碼包里面有個redis.conf文件拷貝到安裝目錄

然后修改配置文件的內容

然后在啟動命令后加上redis.conf就可以后台啟動了

查看進程后發現已經啟動

 

 

redis的五種數據類型(redis中所有的數據都是字符串)

String:key-value(做緩存)
Hash:key-fields-values(做緩存)
List:有順序可重復
Set:無順序,不能重復
SortedSet(zset):有順序,不能重復

incl:代表加一(生成ID)

Decr:代表減一

hash可以對key進行歸類

hash保存

hash獲取

 

向list中添加(l開頭代表從左邊添加)

查看list中的所有內容

向list中添加(r開頭代表從右邊添加)

list彈出左邊第一個數據(彈出后里面就沒有了)

list彈出右邊第一個數據

 

向set中添加數據

查看set中的數據

set中刪除元素

 

zset中添加(數字指定順序)

查看zset

zset刪除

 設置key的過期時間

持久化key

查看key的有效期

 

 

redis的持久化

redis的所有數據都是保存到內存中

rdb:快照形式,定期把內存中當前時刻的數據保存到磁盤,redis默認的持久化方案

aof:append only file.把所有對redis數據庫操作的命令,增刪改操作的命令,保存到文件中.數據恢復時把所有命令執行一遍即可.

 

下面介紹一下redis.conf配置文件中的內容

redis的默認端口

默認保存數據的方案

快照文件(備份數據只需備份這個文件,恢復再拷貝回來,重新啟動redis即可)

開啟aof

開啟了之后再bin下回生成一個文件

 

 

 

redis的集群搭建

架構圖

 

(1)所有的redis節點彼此互聯(PING-PONG機制),內部使用二進制協議優化傳輸速度和帶寬.

(2)節點的fail是通過集群中超過半數的節點檢測失效時才生效.

(3)客戶端與redis節點直連,不需要中間proxy層.客戶端不需要連接集群所有節點,連接集群中任何一個可用節點即可

(4)redis-cluster把所有的物理節點映射到[0-16383]slot上,cluster 負責維護node<->slot<->value

Redis 集群中內置了 16384 個哈希槽,當需要在 Redis 集群中放置一個 key-value 時,redis 先對 key 使用 crc16 算法算出一個結果,然后把結果對 16384 求余數,這樣每個 key 都會對應一個編號在 0-16383 之間的哈希槽,redis 會根據節點數量大致均等的將哈希槽映射到不同的節點

 

redis集群中至少應該有三個節點,要保證集群的高可用,需要每個節點有一個備份機

*在/usr/local下創建redis-cluster目錄

*在拷貝之前要刪除redis的bin目錄下的文件

拷貝六份

 

通過修改redis.conf文件修改端口號

 *打開每個redis的集群

*創建啟動所有redis的命令

*修改這個命令的權限

*開啟所有redis

*使用ruby腳本搭建集群,需要ruby的運行環境

*上傳ruby的包到linux

*執行gem命令

*在原版的redis-3.0.0下有一個redis-trib.rb文件

*復制到剛才建立的集群目錄下

*搭建集群的命令

./redis-trib.rb create --replicas 1 192.168.25.153:7001 192.168.25.153:7002 192.168.25.153:7003 192.168.25.153:7004 192.168.25.153:7005  192.168.25.153:7006

代表集群創建成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM