A master-master
configuração a seguir funcionou no MySQL Server 5.1.x (Ubuntu 10.04).
Mestre1(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
##################################
Mestre2(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
##################################
Agora NÃO está funcionando com MySQL Server 5.5 (ubuntu 12.04). Quero dizer que quando eu reinicio o serviço mysql com a configuração acima, o serviço mysql demora muito para iniciar e nem inicia. Nada nos logs do MySQL e estão vazios. Eu tentei matar o mysql e iniciá-lo novamente, mas ele ainda não está iniciando e se eu remover a configuração de replicação acima, ele iniciará normalmente.
O que estou fazendo de errado com o mysql 5.5? Estou planejando configurar um cluster de quatro nós com replicação mysql em servidores Ubuntu para HA e failover. É Ubuntu 12.04
e MySQL 5.5
recomendado para uso em produção?
Preciso de suas contribuições. Obrigado!
Atualização 1
Depois de comentar as master-*
linhas a seguir em ambos os mestres, o MySQL inicia normalmente e a replicação funciona.
#master-host = 192.168.2.xx
#master-user = repli
#master-password = secret
#master-connect-retry = 60
Então como especificar o servidor mestre nos escravos? Basta CHANGE MASTER TO MASTER_HOST='192.168.2.xx', MASTER_USER='repli', MASTER_PASSWORD='secret',...
?. A produção do MySQL 5.5.24 e do Ubuntu 12.04 está pronta?
Responder1
Quero dizer que quando eu reinicio o serviço mysql com a configuração acima, o serviço mysql demora muito para iniciar e nem inicia. Nada nos logs do MySQL e estão vazios.
Você especificoulog-error
opção em /etc/my.cnf
?
Depois de comentar as
master-*
linhas a seguir em ambos os mestres, o MySQL inicia normalmente e a replicação funciona.#master-host = 192.168.2.xx #master-user = repli #master-password = secret #master-connect-retry = 60
Então como especificar o servidor mestre nos escravos? Basta
CHANGE MASTER TO MASTER_HOST='192.168.2.xx', MASTER_USER='repli', MASTER_PASSWORD='secret',...
?.
Omaster-*
as opções são removidas no MySQL 5.5. Claro, CHANGE MASTER TO
é o suficiente porque os valores são salvos no master.info
arquivo.
A produção do MySQL 5.5.24 e do Ubuntu 12.04 está pronta?
Sim. Mas dê uma olhadaessePara maiores informações.