Você está na página 1de 9

---------------------------- # Incio Instalao e Configurao MySQL Server Replicando Servidores # ----------------------------

MySQL Server um excelente banco de dados open source, e pode ser adquirido a partir do repositrio web
do desenvolvedor:
http://dev.mysql.com/downloads/mysql/5.0.html#win32
Instalando o MySQL Server 5.0

O ideal instalar o MySQL como um


servio do Windows.
Caso tenha problemas, o comando mysqld
pode instal-lo manualmente. A sintax est
disponvel no arquivo C:\Program
Files\MySQL\MySQL Server 5.0\my.ini

Se preferir no informe nenhuma senha.


Nota: Tive problemas em instalaes
anteriores por causa de inserir senhas.

Siga o procedimento de instalao acima para ambos os servidores que replicaram os servios.
Doravante o primeiro servidor ser identificado como Mestre e o secundrio como Escravo.
6

Preparando a Mquina Mestre


O primeiro passo fazer um dump da(s) base(s) de dados que queremos replicar. Isso serve para criarmos
uma cpia exata do nosso banco de dados para colocarmos no servidor Escravo.
Para fazer um dump da base de dados use:
# mysqldump --database <nome_do_db> -u root p > c:\meu_db.sql
ou
# mysqldump --all-database -u root p > c:\meu_mysql.sql
De posse do(s) arquivo(s) SQL do dump da mquina Mestre, temos de criar o usurio que far a replicao
entre as duas mquinas.
Logue-se como root (ou outro usurio com direitos) no mysql:

Execute os comando abaixo para garantir o direito de cpia para o usurio replica:
mysql> grant file, super, replication client, replication slave, reload on *.* to replica@% identified by
replica;
mysql> flush privileges;

Na seo [mysqld] do arquivo de inicializao my.ini do MySQL (Servidor Mestre) insira as opes:
Nota: As linhas ao lado servem para iniciar o log binrio do mysql
e um nmero nico para o servidor.
Salve o arquivo my.ini e reinicie o servidor mestre ( reiniciar
somente o servio do Mysql suficiente)

Reiniciado o servidor Mestre (ou ao menos os servios) digite o comando abaixo no prompt do mysql:
mysql> reset master;
mysql> flush privileges;

Use o comando abaixo para verificar a replicao no Servidor Master:


mysql> show master status;

Preparando a Mquina Escravo


Antes de qualquer passo necessrio restabelecer as bases de dados do Servidor Mestre no Servidor Escravo
atravs dos dumps efetuados anteriormente.
7

Use o comando abaixo para reestabelecer os dumps de backup:


C:\mysql -u root -p ocsweb < c:\ocsweb.sql
Na seo [mysqld] do arquivo de inicializao my.ini do MySQL (Servidor Escravo) insira as opes:
Nota: Ateno para a linha server-id=2. Repare que aqui no
escravo usamos o numero 2 e no mestre usamos o nmero 1. Se
tivessemos uma terceira mquina replicando dados, ela deveria ser
a server-id=3. Estes nmeros no devem se repetir e so usados
pelo MySQL se orientar entre as replicaes. Os parmetros
master-user e master-password so as mesmas das configuraes
feitas no Mestre, neste caso replica e replica. O ltimo parmetro
o comando replicate-do-db. Esse parmetro serve para especificar
qual a base de dados que queremos replicar. Se tivermos mais bases
de dados sendo replicadas, devemos inclui-las da seguinte forma:
replicate-do-db = minha_database1
Ou, caso acontea de no querer apenas uma base de dados e sim,
todas, apenas especifique a linha replicate-do-db = e o MySQL
entender que todas as bases devem ser replicadas.

No mysql do Servidor Escravo digite:


mysql> grant file, super, replication client, replication slave, reload on *.* to replica@% identified by
replica;
mysql> stop slave;
Nota: Lembrando que para a replicao funcionar, se no for
mysql> reset slave;
utilizado o processo de restore dos dumps, devem ser criadas as
mysql> flush privileges;
bases de dados (no master e no slave), assim como as tabelas, pois
a replicao s dos dados.

Reinicie o Servidor Escravo. Com isso, as


configuraes de replicao esto encerradas.
Se tiver problemas na ativao do servio do Mysql, use o comando abaixo:
C:\mysqld-nt --defaults-file=C:\Caminho_do_arquivo_my.ini ou s o comando mysqld-nt.exe

Use o comando abaixo para verificar se a replicao est ok no Servidor Escravo:


mysql> show slave status;

Nota: Repare que na sada do comando ser mostrado uma coluna


chamada Slave Running, cujo contedo deve ser yes.
Caso haja algum problema, verifique as permisses da conta
replica. Ela geralmente culpada pela maioria dos problemas de
replicao. Outra fonte de informao interessante o log de erro
do MySQL, localizado no linux geralmente no diretrio
/var/lib/mysql e no windows no diretrio onde ele foi instalado.
Caso voce tenha configurado um endereo IP incorretamente, o
escravo obviamente no conseguir se conectar ao mestre. Para
consertar o problema, voce deve reconfigurar o arquivo my.cnf ou
my.ini com o IP correto e reiniciar o escravo.

Para permitir acesso remoto a partir de uma mquina da rede ao Servidor MySQL use:
mysql>grant all privileges on *.* to root@ip_remoto9 identified bysenha;
mysql>flush privileges;
8

Testando o acesso remoto:


# mysql h ip_remoto -u root -p

---------------------------- # Fim Instalao e Configurao MySQL Server Replicando Servidores # ----------------------------

Você também pode gostar