ページ

2015年3月28日

Pacemkaerを使って、MySQLレプリケーション設定する際にエラーったところ

CentOS6のPacemakerでMySQLレプリケーションの実験のメモです。

pacemakerのOCFリソースmysqlを使ってpromote/demoteさせる方法をテストした際のメモ。



参考サイト


インフラ構築手順書/PaceMacker+Mysqlレプリケーション構築手順を参考にしてMySQLのレプリケーションを設定します。

単独起動でMySQLレプリケーションとして構成すると記事の通りに動作しました。

動作を確認した環境は、CentOS6.6上にMySQLパッケージ(base、5.1.73-3)をインストールした状態です。


PacemakerのOCFリソースmysqlを使うとエラーがでました


ところが、Pacemakerから起動したMySQLレプリケーション構成ではエラーが発生するケースがありました。

Pacemakerがマスターとスレーブを入れ替える際に下記のエラーメッセージがでます:

Access denied; you need the RELOAD privileges for this operation;

マスターノードに昇格させる場合のmysqlコマンドは、

mysql> stop slave;
mysql> show processlist\G
mysql> reset master;

手作業の場合このような感じで行いますね。

OCFリソース内のmysqlを確認したところ、
pacemakerもstop slave; reset master;を発行してスレーブの昇格を行っています。

先のRELOAD privilegesエラーは、stop slave;発行した際に発生していました。

とうことで、MySQLにRELOAD privilegesを追加するとpacemakerからマスター・スレーブの移動がつつがなく動くようになります。

mysql> GRANT RELOAD on *.* to 'replicationuser'@'mysqlserver1';