Primeiro, saber onde estava o diretório de dados para mim era a chave. /usr/local/var/mysql
Aqui, havia pelo menos um arquivo com a extensão .err precedido pelo nome da minha máquina local. Tinha todas as informações que eu precisava para diagnosticar.
Acho que estraguei tudo instalando o mysql 8 primeiro. Meu aplicativo não é compatível com ele, então tive que fazer o downgrade de volta para 5,7
Minha solução que funcionou para mim foi acessar /usr/local/etc/my.cnf
Encontre esta linha, se estiver lá. Eu acho que o mysql 8 está relacionado:
mysqlx-bind-address = 127.0.0.1
Remova-o porque no mysql 5.7 diz que não gosta no log de erros
Adicione também essa linha se ela não estiver no endereço de ligação.
socket=/tmp/mysql.sock
Vou ao /tmp
diretório e exclua todos os arquivos mysql.sock lá. No início do servidor, ele recriará os arquivos de meias
Lixeira o diretório de dados com o mySQL no estado parado. O meu era /usr/local/var/mysql
. Este é o mesmo local em que os logs estão
De lá eu corri
>mysqld --initialize
Então tudo começou a funcionar ... este comando fornecerá uma senha aleatória no final. Salve essa senha para a próxima etapa
Executando isso para atribuir minha própria senha.
>mysql_secure_installation
Ambos
>brew services stop mysql@5.7
e
>mysql.server start
agora estão trabalhando. Espero que isto ajude. São cerca de 3 horas de tentativa e erro.