netstat
estava realmente funcionando bem.
Uma maneira de verificar se o plug-in Mysqlx estava escutando na porta que ele deveria ouvir é verificar as variáveis de status do MySQL.
SHOW GLOBAL STATUS
De acordo com a referência oficial do MySQL 5.7 deve haver uma variável chamada Mysqlx_port
definida para a respectiva porta. Se estiver definido como UNDEFINED
, a ligação falhou. Este foi o caso para mim.
Resumindo, desinstalei tudo com o MySQL em seu nome depois de exportar meus dados e os reinstalei. Depois disso, certifiquei-me de que o servidor vanilla ouvia o 33060 agora e aconteceu.
No entanto, depois de copiar minha pasta Data
para o diretório de dados do novo servidor ( C:/ProgramData/MySQL Server 5.7/
), ele parou de funcionar novamente. Eu reconfigurei o banco de dados novamente e importei os dados usando um dump SQL. O problema voltou novamente.
Eu precisava restaurar meu banco de dados antigo e exportar apenas meus bancos de dados (sem mysql
, sys
, performance_schema
e information_schema
) e importá-los no novo banco de dados para que ele funcionasse corretamente. Parece que há alguma configuração ou dados nos bancos de dados do servidor que impedem que o Mysqlx funcione corretamente.
Pro dica para exportar todos os dados: use
mysqldump -u root -p --routines --triggers --databases <database>... > dump.sql
Por isso, também exportará rotinas e acionadores. Os usuários também serão perdidos, mas há tópicos na internet com explicações sobre como fazer isso . O comando solicitará uma senha.
Use isso para reimportar:
mysql -u root -p < dump.sql