Replicação do MySQL sobre SSH - Last_IO_Errno: 2003 - erro ao conectar ao mestre

1

Eu tenho a replicação MASTER / SLAVE do MySQL trabalhando em duas caixas de teste (Centos 6.4 / MySQL 5.5.32) pela LAN.

Protegendo a conexão por ssh causa problemas de conexão da máquina SLAVE:

(Exemplo de mostra status do escravo \ G Saída)

Last_IO_Errno: 2003 Last_IO_Error: erro ao conectar ao mestre '[email protected]: 3305' - tempo de repetição: 60

Eu concedi ao usuário de replicação os privilégios relevantes no servidor mestre com o 127.0.0.1 e o IP da rede.

Eu encaminhei a porta do escravo para o mestre por SSH

ssh -f 192.168.0.128 -L 3305: 192.168.0.128: 3306 -N

Eu posso me conectar ao MySQL mestre de slave com

mysql -urep -ppassword -h127.0.0.1 -P3305

A configuração do servidor mestre parece bem, já que funciona sem um túnel, e o túnel parece bem, já que eu posso conectar ao MySQL entre os dois.

Alterar a declaração principal:

MUDAR MASTER PARA MASTER_HOST = '127.0.0.1', MASTER_PORT = 3305, MASTER_USER = 'rep', MASTER_PASSWORD = 'senha';

Observação: sei que há motivos para usar SSL, em vez de SSH, mas tenho motivos pelos quais o SSH é a melhor opção para minha configuração.

    
por Dom 07.08.2013 / 11:23

2 respostas

3

Obrigado pela sua ajuda, pessoal, mas acontece que o problema era o SELinux não permitir o MySQL em uma porta não padrão.

    
por 08.08.2013 / 11:01
1

Você pode usar semanage para permitir nenhuma porta padrão adicional para o mysqld

sudo /usr/sbin/semanage port -a -t mysqld_port_t -p tcp 3305

então você pode verificar usando

sudo /usr/sbin/semanage port -l | grep mysql

você verá a nova porta exibida junto com a porta padrão 3306

mysqld_port_t tcp 3305, 3306, 63132-63164

    
por 02.06.2014 / 03:17