[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mysql - replicação



Pra confirmar se tua configuracao esta ok, roda esse comando nos dois masters:
    select @@server_id;

Att.
Marcelo Altmann
On 29/10/12 22:01, Caio Ferreira wrote:
Prezado Rodolfo

Executei o comando "find -name *.cnf" e tive como resultado o seguinte

$ sudo find -name *.cnf
./etc/mysql/debian.cnf
./etc/mysql/my.cnf
./etc/mysql/conf.d/mysqld_safe_syslog.cnf
./usr/share/doc/mysql-server-5.1/examples/my-small.cnf

Pelo visto, no diretório /etc/mysql existem dois arquivos de
configuração, debian.cnf e my.cnf. Executei o aplicativo lsof mais
infelizmente não consegui identificar qual arquivo o mysql esta
utilizando.

Olhando o arquivo "/etc/init.d/mysql" encontrei a seguinte informação.

CONF=/etc/mysql/my.cnf
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"

Aparentemente o mysql utiliza o arquivo my.cnf pois no mesmo arquivo
de configuração tem o seguinte

## Do some sanity checks before even trying to start mysqld.
sanity_checks() {
   # check for config file
   if [ ! -r /etc/mysql/my.cnf ]; then
     log_warning_msg "$0: WARNING: /etc/mysql/my.cnf cannot be read.
See README.Debian.gz"
     echo                "WARNING: /etc/mysql/my.cnf cannot be read.
See README.Debian.gz" | $ERR_LOGGER
   fi

Alguma idéia?

Desde já agradeço pela ajuda.

Caio Abreu Ferreira

2012/10/23 Rodolfo <rof20004@gmail.com>:
Deve ser porque ele deve esta se referindo a outro arquivo de configuracao,
onde os servers estao com o mesmo ID. Procure por outros arquivos de
configuracao.

Uma forma de voce pegar os arquivos abertos no momento é com lsof, ele lista
todos os arquivos abertos.


O que voce pode fazer é executa-lo e depois executar o mysql, quando der
esse erro o arquivo que ele esta referenciando provavelmente sera mostrado.


Abraços.

2012/10/23 Caio Ferreira <abreuferr@gmail.com>
Lista

Por acaso alguém na lista já construiu uma estrutura master<>master de
replicação de dados no MySQL? Estou seguindo um tutorial do
HowtoForge[1] e o primeiro erro que esta aparecendo é o seguinte.

- mensagem de erro do servidor db1 (192.168.0.3)
$ sudo cat /var/log/syslog

Oct 23 16:34:51 db1 mysqld: 121023 16:34:51 [ERROR] Slave I/O: Fatal
error: The slave I/O thread stops because master and slave have equal
MySQL server ids; these ids must be different for replication to work
(or the --replicate-same-server-id option must be used on slave but
this does not always make sense; please check the manual before using
it). Error_code: 1593

O problema é que o parâmetro no arquivo /etc/mysql/my.cnf do servidor
db1 esta assim "server-id = 1" e no db2 esta "server-id = 2".
Resumindo, os servers ids estão diferentes. Alguém por acaso teria
alguma ideia do que eu possa esta fazendo de errado?


1-http://www.howtoforge.com/mysql5_master_master_replication_debian_etch

--
  .''`.   Caio Abreu Ferreira



Reply to: