MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a...

9

Click here to load reader

Transcript of MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a...

Page 1: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

1

---------------------------- # Início Instalação e Configuração MySQL Server – Replicando Servidores # ----------------------------

MySQL Server é um excelente banco de dados open source, e pode ser adquirido a partir do repositório web

do desenvolvedor:

http://dev.mysql.com/downloads/mysql/5.0.html#win32

Instalando o MySQL Server 5.0

Page 2: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

2

Page 3: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

3

Page 4: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

4

Page 5: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

5

O ideal é instalar o MySQL como um

serviço do Windows.

Caso tenha problemas, o comando mysqld

pode instalá-lo manualmente. A sintax está

disponível no arquivo C:\Program

Files\MySQL\MySQL Server 5.0\my.ini

Page 6: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

6

Siga o procedimento de instalação acima para ambos os servidores que replicaram os serviços.

Doravante o primeiro servidor será identificado como Mestre e o secundário como Escravo.

Se preferir não informe nenhuma senha.

Nota: Tive problemas em instalações

anteriores por causa de inserir senhas.

Page 7: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

7

Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso serve para criarmos

uma cópia 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 máquina Mestre, temos de criar o usuário que fará a replicação

entre as duas máquinas.

Logue-se como root (ou outro usuário com direitos) no mysql:

Execute os comando abaixo para garantir o direito de cópia para o usuário replica:

mysql> grant file, super, replication client, replication slave, reload on *.* to ‘replica’@’%’ identified by

‘replica’;

mysql> flush privileges;

Na seção [mysqld] do arquivo de inicialização my.ini do MySQL (Servidor Mestre) insira as opções:

Reiniciado o servidor Mestre (ou ao menos os serviços) digite o comando abaixo no prompt do mysql:

mysql> reset master;

mysql> flush privileges;

Use o comando abaixo para verificar a replicação no Servidor Master:

mysql> show master status;

Preparando a Máquina Escravo

Antes de qualquer passo é necessário restabelecer as bases de dados do Servidor Mestre no Servidor Escravo

através dos dumps efetuados anteriormente.

Nota: As linhas ao lado servem para iniciar o log binário do mysql

e um número único para o servidor.

Salve o arquivo my.ini e reinicie o servidor mestre ( reiniciar

somente o serviço do Mysql é suficiente)

Page 8: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

8

Use o comando abaixo para reestabelecer os dumps de backup:

C:\mysql -u root -p ocsweb < c:\ocsweb.sql

Na seção [mysqld] do arquivo de inicialização my.ini do MySQL (Servidor Escravo) insira as opções:

No mysql do Servidor Escravo digite:

mysql> grant file, super, replication client, replication slave, reload on *.* to ‘replica’@’%’ identified by

‘replica’;

mysql> stop slave;

mysql> reset slave;

mysql> flush privileges;

Reinicie o Servidor Escravo. Com isso, as

configurações de replicação estão encerradas.

Se tiver problemas na ativação do serviço 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 replicação está ok no Servidor Escravo:

mysql> show slave status;

Para permitir acesso remoto a partir de uma máquina da rede ao Servidor MySQL use:

mysql>grant all privileges on *.* to root@ip_remoto9 identified by”senha”;

mysql>flush privileges;

Nota: Atenção para a linha server-id=2. Repare que aqui no

escravo usamos o numero 2 e no mestre usamos o número 1. Se

tivessemos uma terceira máquina replicando dados, ela deveria ser

a server-id=3. Estes números não devem se repetir e são usados

pelo MySQL se orientar entre as replicações. Os parâmetros

master-user e master-password são as mesmas das configurações

feitas no Mestre, neste caso replica e replica. O último parâmetro é

o comando replicate-do-db. Esse parâmetro 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 aconteça de não 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.

Nota: Repare que na saída do comando será mostrado uma coluna

chamada “Slave Running”, cujo conteúdo deve ser “yes”.

Caso haja algum problema, verifique as permissões da conta

replica. Ela é geralmente culpada pela maioria dos problemas de

replicação. Outra fonte de informação interessante é o log de erro

do MySQL, localizado no linux geralmente no diretório

/var/lib/mysql e no windows no diretório onde ele foi instalado.

Caso voce tenha configurado um endereço IP incorretamente, o

escravo obviamente não 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.

Nota: Lembrando que para a replicação funcionar, se não for

utilizado o processo de restore dos dumps, devem ser criadas as

bases de dados (no master e no slave), assim como as tabelas, pois

a replicação é só dos dados.

Page 9: MySQL Server é um excelente banco de dados open source, · PDF file7 Preparando a Máquina Mestre O primeiro passo é fazer um dump da(s) base(s) de dados que queremos replicar. Isso

9

Testando o acesso remoto:

# mysql –h ip_remoto -u root -p

---------------------------- # Fim Instalação e Configuração MySQL Server – Replicando Servidores # ----------------------------