sql >> Base de Datos >  >> RDS >> Mysql

MYSQL_ROOT_PASSWORD está configurado pero se deniega el acceso para el usuario 'root'@'localhost' (con contraseña:SÍ) en el contenedor docker

Dando por sentado que ha mostrado todo su registro de inicio, parece que inició su contenedor mysql contra un db_data preexistente volumen que ya contiene un sistema de archivos de base de datos mysql.

En este caso, no se inicializará absolutamente nada en el inicio del contenedor y las variables de entorno son inútiles. Citando la documentación de imagen oficial en la sección "Variables de entorno":

Si desea que su instancia se inicialice, debe comenzar desde cero. Es bastante fácil hacerlo con docker compose cuando se usa un volumen con nombre como en su caso. Advertencia:esto eliminará permanentemente el contenido de sus db_data volumen, eliminando cualquier base de datos anterior que haya tenido allí . Cree una copia de seguridad primero si necesita conservar el contenido.

docker-compose down -v
docker-compose up -d

Si alguna vez convierte a un montaje de enlace, tendrá que eliminar todo su contenido usted mismo (es decir, rm -rf /path/to/bind/mount/* )

Nota:muchas otras imágenes docker oficiales de db (postgres, mongo....) funcionan de manera similar.