MySQL--Percona-XtraDB-Cluster使用xtrabackup來添加節點

来源:http://www.cnblogs.com/TeyGao/archive/2017/05/05/6814764.html
-Advertisement-
Play Games

雖然PXC支持線上增加群集節點,但是目前尚未解決wsrep_sst_method=xtrabackup 或wsrep_sst_method=mysqldump時報錯的問題,因此嘗試手動完成xtrabackup備份和恢復並添加到群集節點。 場景: 有三台乾凈的CentOS 6的伺服器,IP配置為:19 ...


雖然PXC支持線上增加群集節點,但是目前尚未解決wsrep_sst_method=xtrabackup 或wsrep_sst_method=mysqldump時報錯的問題,因此嘗試手動完成xtrabackup備份和恢復並添加到群集節點。

場景:

有三台乾凈的CentOS 6的伺服器,IP配置為:192.168.166.169,192.168.166.170,192.168.166.171,準備搭建三節點的Percona XtraDB Cluster,目前192.168.166.169,192.168.166.170已加入到群集,準備將192.168.166.171加入到群集中。

192.168.166.169的wsrep_node_name為pxc1,

192.168.166.170的wsrep_node_name為pxc2,

192.168.166.171的wsrep_node_name為pxc3,

============================================

首先在伺服器192.168.166.170上備份,使用galera-info來獲取備份時的群集序列號:

/usr/bin/innobackupex --defaults-file="/etc/my.cnf" \
--host="localhost" \
--port=3306 \
--user="sstuser" \
--password="s3cret" \
--socket="/var/lib/mysql/mysql.sock" \
--galera-info \
"/pxc_backup/"

將備份複製到192.168.166.171上,切換到備份目錄下,執行恢復:

innobackupex --apply-log ./

恢復完成後,可以看到一個xtrabackup_galera_info,該文件中存放備份時的群集序列號

本次demo中xtrabackup_galera_info數據為:

5f3c567e-033f-11e6-a67c-67e2991c9c84:13

 

從192.168.166.169或192.168.166.170複製文件grastate.dat到192.168.166.171上

預設rpm安裝下,grastate.dat路徑為:/var/lib/mysql

然後在192.168.166.171上修改grastate.dat文件中的值為xtrabackup_galera_info數據:

# GALERA saved state
version: 2.1
uuid:    5f3c567e-033f-11e6-a67c-67e2991c9c84
seqno:   -1
safe_to_bootstrap: 0

修改文件mysql數據目錄的許可權

chown -R mysql:mysql /var/lib/mysql

編輯mysql配置文件/etc/my.cnf

 

然後分別到192.168.166.169和192.168.166.170上執行下麵命令來查看各節點上保存的最小序列號:

show global status like 'wsrep_local_cached_downto';

假設192.168.166.170上的最小序列號低於xtrabackup_galera_info數據,則證明可以利用192.168.166.170來做增量同步,而192.168.166.170的wsrep_node_name為pxc2,因此啟動pxc3節點的腳本為:

service mysql start --wsrep_sst_donor=pxc2

啟動成功:

ERROR! MySQL (Percona XtraDB Cluster) is not running, but lock file (/var/lock/subsys/mysql) exists
Starting MySQL (Percona XtraDB Cluster).... SUCCESS!

登錄MySQL查看狀態:

show status like 'wsrep%';

插入測試數據驗證群集同步是否正常。

============================================

趕班車,走人,周末快樂

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 所謂的預處理技術,最初也是由MySQL提出的一種減輕伺服器壓力的一種技術! 傳統mysql處理流程 1, 在客戶端準備sql語句 2, 發送sql語句到MySQL伺服器 3, 在MySQL伺服器執行該sql語句 4, 伺服器將執行結果返回給客戶端 這樣每條sql語句請求一次,mysql伺服器就要接收 ...
  • 這兩天在自己的windows7上安裝了一下MySQL資料庫,安裝使用的是5.7.18版本的 noinstall Zip Archive安裝包mysql-5.7.18-win32.zip。由於5.7版本相對5.6版本發生了一下變化,很多網上的安裝教程都失效了,因此在安裝過程中遇到了一系問題,在這裡根據 ...
  • MySQL基本概念以及簡單操作 一、MySQL MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於Oracle 旗下產品。MySQL 是最流行的關係型資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Ma ...
  • 在我們很多情況下的開發,為了方便或者通用性的考慮,都首先考慮SQL Server資料庫進行開發,但有時候客戶的生產環境是Oracle或者其他資料庫,那麼我們就需要把對應的數據結構和數據腳本轉換為對應的資料庫,數據結構一般來說,語法都遵循了SQL92的標準,或者我們根據不同的PowerDesigner... ...
  • 一、排序檢索數據 1.排序數據:SELECT prod_name FROM Products ORDER BY prod_name(對prod_name列以字母順序排序數據) ORDER BY子句的位置在指定一條ORDER BY子句時,應該保證它是SELECT語句中最後一條子句。如果它不是最後的子句 ...
  • 當我們電腦與oracle編碼不一致時,可能出現中文亂碼問題,這時候我們只要將cmd的編碼改成和oracle一致即可 (sql plus界面顯示亂碼) (更改cmd編碼為UTF8後顯示正常) 使用chcp 65001 命令改變字元集 附贈幾個常用字元集: 936 簡體中文(預設) 65001 UTF ...
  • 本文出處:http://www.cnblogs.com/wy123/p/6815049.html 最新在學習MySQL,純新手,對Linux瞭解的也不多,因為是下載的最新版的MySQL(MySQL5.7.18)二進位包,CentOS7.2下測試安裝,方便以後折騰。大概步驟如下,安裝刪除反覆折騰了幾遍 ...
  • 在 http://download.csdn.net/download/wuqinfei_cs/7740373 下載PL/SQL Developer。 1. 解壓,在instantclient_11_2目錄下新建NETWORK文件夾,再在其下新建ADMIN文件夾。將oracle\product\11 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...