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
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...