Configurando a replicação do banco de dados MySQL [sem reiniciar o mysql]

1

Estou tentando configurar a replicação de banco de dados MySQL, parece bastante simples.

Eu estava usando este tutorial: link

Agora eu executo um grande banco de dados MySQL para um site muito grande, e neste tutorial ele me pede para reiniciar o MySQL para aplicar as novas configurações no arquivo /etc/my.cnf.

Eu tento evitar essa etapa a todo custo, pois eu sei que reiniciar o MySQL pode levar alguns minutos na minha máquina (devido a grandes logs / dbs), e eu não quero nenhum tempo de inatividade.

Existe uma maneira de aplicar as configurações necessárias SEM reiniciar totalmente o Mysql?

    
por Mr.Boon 26.10.2012 / 11:10

2 respostas

1

Muitas configurações em my.cnf podem ser aplicadas a partir do MySQL com SET GLOBAL . Por exemplo:

mysql> SET GLOBAL log_slow_queries = On;

Mas alguns são somente leitura dentro do MySQL; log-bin é um deles.

mysql> set global log_bin = foo;
ERROR 1238 (HY000): Variable 'log_bin' is a read only variable
    
por 26.10.2012 / 11:49
0

Você precisa adicionar um novo banco de dados ao banco de dados existente ou mesclar dois servidores de banco de dados existentes? Se você precisar adicionar um novo, verifique se o servidor está coletando binlogs no servidor de produção pelo comando "show master status". Você precisará definir o ID do servidor no novo servidor (ele não deve ser 1, porque 1 é o ID do servidor padrão e é usado no servidor "antigo"). Além disso, verifique se o seu servidor "antigo" escuta interfaces reais. Se o servidor "antigo" usou apenas 127.0.0.1, você precisará reiniciá-lo, porque você não pode alterar os parâmetros de escuta e ID no servidor em execução sem reiniciar. Todos os outros parâmetros de replicação podem ser alterados pelo comando "set global", mas é altamente recomendável configurá-lo em my.cnf para evitar problemas quando o servidor antigo for reiniciado.

    
por 26.10.2012 / 11:54