Por que o utilitário do cliente mysql não está usando a porta que eu especifico?

7

Estou tentando usar o mysql (utilitário de linha de comando) para conectar ao servidor MySQL através do túnel SSH. O problema é que esse cliente MySQL não usa minha porta especificada. Por exemplo, eu corri isto:

$ mysql -uroot --port=1234

E então apenas conectou à porta 3306.

Por que isso acontece?

Como posso forçar este cliente a se conectar à porta 1234 (então ele deve me mostrar que a porta 1234 não é conectável).

    
por Phuong Nguyen 25.03.2011 / 04:59

2 respostas

9

Se você está rodando o cliente mysql no mesmo host em que o servidor está rodando, provavelmente está fazendo uma conexão de socket e não está usando a porta. Tente adicionar --protocol=TCP ao seu comando

mysql -uroot --protocol=TCP --port=1234

    
por 25.03.2011 / 05:08
4

Se você usar TCP / IP, deverá especificar o IP do host. Se o host for localhost, você deverá usar 127.0.0.1.

Em outras palavras

mysql -uroot-h127.0.0.1 -P1234 -p (se a raiz tiver uma senha)

mysql -uroot -h127.0.0.1 -P1234 (se a raiz não tiver uma senha)

Uma vez logado, execute esta consulta para ter certeza:

MOSTRAR VARIÁVEIS COMO 'porta';

    
por 25.03.2011 / 05:37