[MASOCH-L] Freeradius - MySQL replication
Marcelo Dieder
marcelodieder at gmail.com
Fri Dec 12 10:45:43 -03 2014
Sugiro utilizar a replicação Galera para MySQL ou Mariadb. É mais simples,
funciona como master-master e estes problemas de replicação de instrução
MySQL deixam de ocorrer....Se vc ainda juntar com haproxy facilita o LB e
HA do freeradius.
Abs
Marcelo
Em 12/12/2014 10:31, "davi peres" <daviperes at gmail.com> escreveu:
> tambem não manjo muito mas o meu slave esta assim:
>
> server-id = 2
> master-host = 192.168.x.x
> master-user = replicador
> master-password = xxxxx
> master-port = 3306
>
> criei um usuario replicador no master com acesso a tudo... será que não
> esta faltando voce configurar quem é o seu master? vi que voce fez a
> replicação manual inicial.
>
> Em 12 de dezembro de 2014 10:04, Daniel Vasconcelos <
> vdaniel at tcheturbo.com.br> escreveu:
> >
> > E aí galera!
> > Seguinte, to montando uma máquina para "espelhar" o meu servidor radius,
> > porém, estou tendo um problema com o MySQL. As configurações do
> freeradius
> > em si estão todas corretas (fiz testes de autenticação e funcionou
> > perfeitamente). Porém, o meu problema começa quando eu estou replicando o
> > banco de dados.
> >
> > Tenho o servidor MASTER e o SLAVE, sendo que:
> > Master: rodando o serviço freeradius e consequentemente o banco de dados;
> > Slave: rodando o serviço freeradius e consequentemente o banco de dados;
> >
> > A configuração do arquivo "/etc/mysql/my.cnf" em ambas as máquinas está
> > assim:
> >
> >
> > ## MASTER
> > server-id = 1
> > log_bin = /var/log/mysql/mysql-bin.log
> > expire_logs_days =10
> > max_binlog_size = 100M
> > binlog_do_db = radius
> >
> > ## SLAVE
> > server-id = 2
> > log_bin = /var/log/mysql/mysql-bin.log
> > relay-log = /var/log/mysql/mysql-relay-bin.log
> > log-slave-updates = 1
> > expire_logs_days = 10
> > max_binlog_size = 100M
> > binlog_do_db = radius
> >
> > A partir disso, para que a replicação acontecesse, efetuei os seguintes
> > procedimentos (partindo do princípio de que a questão de usuários já
> > estejam configurados):
> >
> > No servidor MASTER:
> > Travei as tabelas como somente leitura;
> > Peguei a posição do arquivo bin (show master status;);
> > Fiz a exportação da base para o servidor slave;
> >
> > No servidor SLAVE:
> > Fiz a importação da base;
> > Executei o comando no mysql: CHANGE MASTER TO
> MASTER_HOST='meuhost',MASTER_USER='replication',
> > MASTER_PASSWORD='senha', MASTER_LOG_FILE='mysql-bin.000006',
> > MASTER_LOG_POS= 74949498;
> > Em seguida: slave start;
> >
> > A partir dai, tudo estava correndo bem, até que na manhã seguinte,
> cheguei
> > no trabalho e fui verificar como estava a replicação.
> > No MySQL do servidor slave digitei o comando: show slave status\G;
> > Para minha felicidade estava tudo certo até então. Porém, mais tarde, fui
> > verificar novamente o status, e me deparei com um erro:
> >
> > mysql> show slave status\G;
> > *************************** 1. row ***************************
> > Slave_IO_State: Waiting for master to send event
> > Master_Host: meuhost
> > Master_User: replicator
> > Master_Port: 3306
> > Connect_Retry: 60
> > Master_Log_File: mysql-bin.000009
> > Read_Master_Log_Pos: 50811963
> > Relay_Log_File: mysql-relay-bin.000003
> > Relay_Log_Pos: 244
> > Relay_Master_Log_File: mysql-bin.000001
> > Slave_IO_Running: Yes
> > Slave_SQL_Running: No
> > Replicate_Do_DB:
> > Replicate_Ignore_DB:
> > Replicate_Do_Table:
> > Replicate_Ignore_Table:
> > Replicate_Wild_Do_Table:
> > Replicate_Wild_Ignore_Table:
> > Last_Errno: 1194
> > Last_Error: Error 'Table 'radacct' is marked as
> crashed
> > and should be repaired' on query. Default database: 'radius'. Query:
> > 'UPDATE radacct SET framedipaddress = '10.10.4.5',
> > acctsessiontime = '53400', acctinputoctets = '0' <<
> > 32 | '40914351', acctoutputoctets =
> > '0' << 32 | '362241158'
> WHERE
> > acctsessionid = '810033f5' AND username = 'jaguar'
> > AND nasipaddress = '10.54.2.5''
> > Skip_Counter: 0
> > Exec_Master_Log_Pos: 98
> > Relay_Log_Space: 725792285
> > Until_Condition: None
> > Until_Log_File:
> > Until_Log_Pos: 0
> > Master_SSL_Allowed: No
> > Master_SSL_CA_File:
> > Master_SSL_CA_Path:
> > Master_SSL_Cert:
> > Master_SSL_Cipher:
> > Master_SSL_Key:
> > Seconds_Behind_Master: NULL
> > Master_SSL_Verify_Server_Cert: No
> > Last_IO_Errno: 0
> > Last_IO_Error:
> > Last_SQL_Errno: 1194
> > Last_SQL_Error: Error 'Table 'radacct' is marked as
> crashed
> > and should be repaired' on query. Default database: 'radius'. Query:
> > 'UPDATE radacct SET framedipaddress = '10.10.4.5',
> > acctsessiontime = '53400', acctinputoctets = '0' <<
> > 32 | '40914351', acctoutputoctets =
> > '0' << 32 | '362241158'
> WHERE
> > acctsessionid = '810033f5' AND username = 'jaguar'
> > AND nasipaddress = '10.54.2.5''
> > Replicate_Ignore_Server_Ids:
> > Master_Server_Id: 1
> > 1 row in set (0.00 sec)
> >
> > ERROR:
> > No query specified
> >
> >
> > Bom, estou preocupado, pois não tenho experiência com replicação do
> MySQL,
> > mas li bastante sobre e fui surpreendido com esta inconsistência de
> > informação. Alguém saberia explicar um possível motivo de isso ter
> > acontecido? E a partir disso, como posso revidar? Devo fazer o processo
> de
> > exportação/importação novamente?
> >
> > Atenciosamente
> > --
> > Daniel Vasconcelos
> > IT Analyst
> >
> > __
> > masoch-l list
> > https://eng.registro.br/mailman/listinfo/masoch-l
> >
> __
> masoch-l list
> https://eng.registro.br/mailman/listinfo/masoch-l
>
More information about the masoch-l
mailing list