Este artigo nos mostra como configurar dois servidores com MySQL atuando como master e slave para replicação de banco de dados. Em outras palavras, tudo o que acontece no servidor MySQL master acontecerá no MySQL slave.
Com o MySQL daemon instalado (mysqld) e o respectivo cliente,
copie o arquivo de configuração do MySQL que por padrão fica
localizado em /usr/share/mysql.
Suponha que sua máquina suporte uma configuração média, então
copie o my-medium.cnf para o diretório /etc/
renomeando o arquivo para my.cnf.
Caso sua máquina não suporte uma configuração média, então
copie o arquivo my-small.cnf para o /etc. Você
deverá ter o arquivo my.cnf no /etc.
Nesta parte, iremos configurar o servidor master. Pare o servidor
mysqld, pois você estará alterando o seu arquivo de
configuração:
# service mysql stop
ou # /etc/init.d/mysql stop
Abra o arquivo my.cnf em qualquer editor de texto:
# jed my.cnf
Descomente as linhas dos logs ou então acrescente as seguintes
palavras-chaves na seção "[mysqld]"
[mysqld]
log-bin
log
log-slow
log-slave-updates
Isso irá habilitar os logs binários e os demais, além dos logs
de atualização. Salve o arquivo.
Agora inicie o MySQL daemon (mysqld):
# service mysql start
ou # /etc/init.d/mysql start
[2] Comentário enviado por fabio em 23/02/2004 - 15:24h
Bom, me intrometendo, há como você escolhor no slave quais databases serão replicadas, para isso basta definir o parâmetro replicate-do-db na seção [mysqld] do my.conf slave:
replicate-do-db=meu_database1
Se quiser mais de um, basta ir adicionando as demais databases separadas por vírgula.
[7] Comentário enviado por alphainfo em 08/10/2004 - 00:41h
Ow galera,
o ponto levantado pelo wilbil é mto interessante! Esse esquema de replicar bancos confunde mto a galera, pq a primeira vista pensamos que o slave irá assumir na queda do master.
Estamos tentando implementar uma solução de Master/Slave aliada a solução de Alta disponibilidade (HA).
Assim que conseguirmos, postarei aqui no VOL um artigo sobre.
[9] Comentário enviado por marcosge em 12/06/2006 - 00:01h
Bom pessoal, teoricamente eu consegui fazer tudo q se pede nesse artigo, mas eu não consigo ver as bases do master, estranho é que eu dou um show slave status no slave e ele me mostra os 2 yes. O que vocês poderiam me dizer?? será que estou esquecendo de algo??
Lembrando que criei o usuário slave, alterei os dois my.cnf..
[10] Comentário enviado por rhowmert em 27/07/2006 - 09:43h
Opa! Blz galera? Bom gente minha duvida é a seguinte. esta replicação pode até funcionar no caso do servidor travar ou sua conexão cair. Agora vamos supor que meu hd esteja com pau e esteja gravando na dados corrompidos. Esses dados serão replicados assim?
Tipo assim, teoricamente o mysql deveria armazenar em uma memória RAM e depois gravar os dados nos discos tanto dos master qto do slave.
Mas será que isso acontece? ou ele grava em um disco e depois copia pro outro?
[11] Comentário enviado por removido em 17/11/2008 - 09:29h
Bom dia gatecrasher! Eu gostaria de saber se essa replicação é feita em todas as databases do mysql ou apenas uma. Caso seja em apenas uma, sabe me dizer como posso fazer em várias?
[12] Comentário enviado por franciney em 15/10/2012 - 16:42h
Ola ,meu caro , neceesito de sua ajuda , andei verificando no mysqle vi os seguintes arquivos de configuração no /usr/share/mysqld :
config.hug.ini
config.medium.ini
config.small.ini
Gostaria de saber se é destes arquivos que vc esta falando , e tambem gostaria de saber se relmente tenho de leva-los para o /etc , pois o arquivo my.cnf esta no /etc/mysql ?