sql >> Database >  >> RDS >> Mysql

MYSQL_ROOT_PASSWORD is ingesteld maar krijgt toegang geweigerd voor gebruiker 'root'@'localhost' (met wachtwoord:YES) in docker-container

Ervan uitgaande dat u uw volledige startlogboek hebt getoond, lijkt het erop dat u uw mysql-container hebt gestart tegen een reeds bestaande db_data volume dat al een mysql-databasebestandssysteem bevat.

In dit geval wordt er absoluut niets geïnitialiseerd bij het starten van de container en zijn omgevingsvariabelen nutteloos. Citaat van de officiële afbeeldingsdocumentatie in de sectie "Omgevingsvariabelen":

Als u wilt dat uw instantie wordt geïnitialiseerd, moet u helemaal opnieuw beginnen. Het is vrij eenvoudig om te doen met docker compose wanneer u een benoemd volume gebruikt, zoals in uw geval. Waarschuwing:hiermee wordt de inhoud in uw db_data permanent verwijderd volume, waarbij alle eerdere databases die u daar had, worden weggevaagd . Maak eerst een back-up als u de inhoud wilt behouden.

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

Als je ooit converteert naar een bind-mount, moet je alle inhoud zelf verwijderen (d.w.z. rm -rf /path/to/bind/mount/* )

Opmerking:veel andere officiële db-docker-afbeeldingen (postgres, mongo....) werken op een vergelijkbare manier.



  1. jQuery automatisch aanvullen (op afstand) - voorbeeld

  2. Hoe een externe sleutel in SQL toe te voegen?

  3. Google Calendar API :Kalenders selecteren/maken?

  4. Bereken een lopend totaal in MySQL