Ubuntu 12.04 での MySQL 5.5 レプリケーションのセットアップ

Ubuntu 12.04 での MySQL 5.5 レプリケーションのセットアップ

以下のmaster-master構成はMySQL Server 5.1.x(Ubuntu 10.04)で動作しました。

マスター1(192.168.2.80)

##################################
#MySQL Replication
##################################
skip-host-cache
skip-name-resolve
event_scheduler = ON
max_connections = 500
max_connect_errors = 1000

server-id = 10
replicate-same-server-id = 0
auto-increment-increment = 10
auto-increment-offset = 1

master-host = 192.168.2.81
master-user = repli
master-password = secret
master-connect-retry = 60

binlog-format = MIXED
#binlog-ignore-db = information_schema
#binlog-ignore-db = lb1

#max_binlog_size = 500M
log-bin = /var/log/mysql/mysql-bin
log-bin-index = /var/log/mysql/bin-log.index

log-slave-updates
report-host = 192.168.2.80
replicate-ignore-db = information_schema
replicate-ignore-db = lb2
replicate-ignore-db = performance_schema

relay_log_space_limit = 3G
relay-log = /var/log/mysql/relay.log
relay-log-index = /var/log/mysql/relay-log.index
##################################

マスター2(192.168.2.81)

##################################
#MySQL Replication
##################################
skip-host-cache
skip-name-resolve
event_scheduler = ON
max_connections = 500
max_connect_errors = 1000

server-id = 20
replicate-same-server-id = 0
auto-increment-increment = 10
auto-increment-offset = 2

master-host = 192.168.2.80
master-user = repli
master-password = secret
master-connect-retry = 60

binlog-format = MIXED
#binlog-ignore-db = information_schema
#binlog-ignore-db = lb2

#max_binlog_size = 500M
log-bin = /var/log/mysql/mysql-bin
log-bin-index = /var/log/mysql/bin-log.index

log-slave-updates
report-host = 192.168.2.81
replicate-ignore-db = information_schema
replicate-ignore-db = lb1
replicate-ignore-db = performance_schema

relay_log_space_limit = 3G
relay-log = /var/log/mysql/relay.log
relay-log-index = /var/log/mysql/relay-log.index
##################################

現在、MySQL Server 5.5 (ubuntu 12.04) では動作しません。つまり、上記の構成で mysql サービスを再起動すると、mysql サービスの起動に長い時間がかかり、まったく起動しません。mysql ログには何も記録されず、空です。mysql を強制終了して再起動してみましたが、それでも起動しません。上記のレプリケーション構成を削除すると、通常どおり起動します。

mysql 5.5 で何が間違っているのでしょうか? HA とフェイルオーバーのために、Ubuntu サーバーで mysql レプリケーションを使用して 4 ノード クラスターをセットアップする予定です。これUbuntu 12.04MySQL 5.5実稼働での使用に推奨されますか?

あなたの意見が必要です。ありがとうございます!

アップデート1

master-*両方のマスターで次の行をコメントアウトすると、MySQL が正常に起動し、レプリケーションが機能します。

#master-host = 192.168.2.xx
#master-user = repli
#master-password = secret
#master-connect-retry = 60

では、スレーブ上でマスター サーバーを指定するにはどうすればよいでしょうか。これでCHANGE MASTER TO MASTER_HOST='192.168.2.xx', MASTER_USER='repli', MASTER_PASSWORD='secret',...十分でしょうか。MySQL 5.5.24 と ubuntu 12.04 は本番環境に対応していますか。

答え1

つまり、上記の設定で MySQL サービスを再起動すると、MySQL サービスの起動に長い時間がかかり、まったく起動しません。MySQL ログには何も記録されず、空になります。

指定しましたかlog-errorオプションは/etc/my.cnf

master-*両方のマスターで次の行をコメントアウトすると、MySQL が正常に起動し、レプリケーションが機能します。

#master-host = 192.168.2.xx
#master-user = repli
#master-password = secret
#master-connect-retry = 60

では、スレーブ上でマスター サーバーを指定するにはどうすればよいでしょうか。これでCHANGE MASTER TO MASTER_HOST='192.168.2.xx', MASTER_USER='repli', MASTER_PASSWORD='secret',...十分でしょうか。

master-*MySQL 5.5 ではオプションは削除されます。もちろん、CHANGE MASTER TO値はmaster.infoファイルに保存されるので十分です。

MySQL 5.5.24 と ubuntu 12.04 は本番環境に対応していますか?

はい。でも、見てくださいこれ詳細については。

関連情報