はじめに
Galera Clusterの検証環境をつくろうと思って、既にある環境からmy.cnfを丸コピしてきたものを使って、初期ノード起動後、2台目以降のGalera Clusterを起動しようとした時に発生したエラー
エラー内容
ログファイルより抜粋
141230 21:41:42 [Note] WSREP: Running: 'wsrep_sst_xtrabackup --role 'joiner' --address '10.0.0.97' --auth 'root' --datadir '/var/lib/mysql/' --defaults-file '/etc/my.cnf' --parent '4906'' which: no innobackupex in (/usr/sbin:/sbin:/usr//bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin) WSREP_SST: [ERROR] innobackupex not in path: /usr/sbin:/sbin:/usr//bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin (20141230 21:41:42.953) 141230 21:41:42 [ERROR] WSREP: Failed to read 'ready' from: wsrep_sst_xtrabackup --role 'joiner' --address '10.0.0.97' --auth 'root' --datadir '/var/lib/mysql/' --defaults-file '/etc/my.cnf' --parent '4906' Read: '(null)' 141230 21:41:42 [ERROR] WSREP: Process completed with error: wsrep_sst_xtrabackup --role 'joiner' --address '10.0.0.97' --auth 'root' --datadir '/var/lib/mysql/' --defaults-file '/etc/my.cnf' --parent '4906': 2 (No such file or directory) 141230 21:41:42 [ERROR] WSREP: Failed to prepare for 'xtrabackup' SST. Unrecoverable. 141230 21:41:42 [ERROR] Aborting
原因
wsrep_sst_method=xtrabackup
だったため
wsrep_sst_method
はGalera Cluster起動時にマスタデータベース・サーバから同期する手段を指定するパラメータで、デフォルトがrsync
なのですが既にあった環境にはxtrabackup
を指定していました。
つくりたてほやほやぁのサーバにはPercona XtrabackupをインストールしていなかったためGalera Cluster起動時に同期ができず失敗した模様です。
解決策
Percona XtraBackupのインストール
percona-toolkitに同梱されています。
$ yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm $ yum install xtrabackup
Galera Clusterの起動
Galera Cluster
$ service mysql start
また wsrep_sst_method=xtrabackup
としたときは wsrep_sst_auth=<認証ユーザ>:
も設定しておくことを忘れずに。
元記事はこちらです。
「Galera Cluster MariaDB起動時のエラーtips」