国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

redis配置文件損壞處理案例

IT那活兒 / 3428人閱讀
redis配置文件損壞處理案例
一. 問題現象

redis集群一臺主機因硬件故障宕機恢復后,啟動其某個port_x端口服務時,啟動失敗。查看日志port_x.log,報錯信息“Unrecoverable error: corrupted cluster config file”,其意思是不可恢復的錯誤:集群配置文件損壞。


二. 處理方法

1) 刪除損壞的配置文件

刪除port_x端口目錄~/cluster/port_x中的配置文件nodes.conf

注:nodes.conf配置文件名,在~/cluster/port_x/redis.conf中配置,參數為cluster-config-file。如下圖:

2)啟動port_x端口服務

cd ~/cluster/port_x

nohup redis-server ./redis.conf &

3)檢查集群信息

執行命令redis-cli -h xx.xx.xx.xx -p port_x -a admin cluster nodes檢查集群信息,紅色部分是異常的主機ip和服務端口

圖:目前狀態是master,fail,noaddr狀態沒有slots數據

4)剔除節點

redis-cli -h xx.xx.xx.xx -p port_x -a admin
CLUSTER FORGET 3d44f1e574aa7ba4e192450e5002fe0f98014731,紅色部分為上圖異常的節點

5)加入集群

redis-cli -h xx.xx.xx.xx -p port_x -a admin

CLUSTER MEET xx.xx.xx.xx port_x

6)指定為從節點

執行命令redis-cli -h xx.xx.xx.xx -p port_x -a admin cluster nodes檢查集群信息

從上圖可知:master節點59463670386e78bfe6eed6c3e99ed3b488fb1ba6只有一個slave,其他master有2個從節點。所以將xx.xx.xx.xx主機port_x端口服務指定為59463670386e78bfe6eed6c3e99ed3b488fb1ba6的從節點

redis-cli -h xx.xx.xx.xx -p port_x -a admin
CLUSTER REPLICATE 59463670386e78bfe6eed6c3e99ed3b488fb1ba6

如下圖:master節點59463670386e78bfe6eed6c3e99ed3b488fb1ba6從節點個數已為2個


三. 小結與思考

本案例中,redis主機宕機恢復后,啟動服務時,日志顯示配置文件損壞,查看配置文件nodes.conf內容時,發現其內容只有部分,被異常截取了。究其原因是主機宕機導致,是redis服務被異常停止。

綜上所述,不能因為redis采用了集群模式,而不注重規范化操作,停止redis集群服務時,不能kill -9 pid,也不可直接重啟或停止redis主機。停止redis服務可采用如下命令:

redis-cli -h xx.xx.xx.xx -p port_x -a admin shutdown  
或者
ps -ef|grep redis-server|grep -v grep|grep port_x|awk {print "kill "$2}|sh


END


更多精彩干貨分享

點擊下方名片關注

IT那活兒

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/129879.html

相關文章

  • 云主機文件系統readonly處理案例

    摘要:通常發生該問題的場景有二一云主機和宿主機繁忙,云主機的請求得不到及時的響應,從而產生磁盤錯誤,為了保護磁盤數據會分區為只讀二云主機被強制關機,導致磁盤出現文件系統錯誤故障。 本文由作者朱益軍授權網易云社區發布。 背景 維護巡檢云主機時,發現有一臺運行redis的云主機狀態顯示維護中,登錄該實例查看,系統盤變成readonly。本文簡單分析該問題出現原因,并為運維人員提供常見處理方法及建...

    neroneroffy 評論0 收藏0
  • Redis持久化存儲詳解(一)

    摘要:主要是原因根據資料提示,可以能使由于如下原因文本協議的兼容性好前面我們提及到了文件是進行二進制加密,可能不同版本之間會出現不兼容的情況,采用文本協議可以加避免該問題。 為什么要做持久化存儲? 持久化存儲是將 Redis 存儲在內存中的數據存儲在硬盤中,實現數據的永久保存。我們都知道 Redis 是一個基于內存的 nosql 數據庫,內存存儲很容易造成數據的丟失,因為當服務器關機等一些異...

    wenshi11019 評論0 收藏0

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<