No prompt de comando do host, execute o código abaixo para entrar na linha de comando do container:
docker exec -it <nome_do_container> bash -l
Navegue até o diretório /etc/mysql
cd /etc/mysql
- Dentro do container, abra o arquivo my.cnf com o VI e insira abaixo do [mysqld] a linha com: skip-grant-tables;
-
- Insira o comando: vi my.cnf
- Vá até o final da linha [mysqld]
- De entender e insira o código: skip-grant-tables
- Click em ESC, digite :eq e dê enter para sair e salvar o arquivo
- Reinicie o myslq;
- Execute o comando:
mysql -u root -p123456
E os 3 comandos abaixo:
UPDATE mysql.user SET Grant_priv = 'Y', Super_priv = 'Y' WHERE User = 'root'; FLUSH PRIVILEGES ; GRANT ALL ON *.* TO 'root'@'localhost'
Reinicie o mysql;
Referências:
https://stackoverflow.com/questions/1709078/how-can-i-restore-the-mysql-root-user-s-full-privileges