Der MySQL-Container startet nicht in Docker

Ich habe ein Phänomen festgestellt, dass der MySQL-Container nicht mit Docker gestartet wurde. Ich kenne die Ursache nicht, aber ich habe sie gelöst, deshalb werde ich einmal eine Notiz hinterlassen

Umgebung

Fazit zuerst

Anwenden und Neustarten mit deaktivierter gRPC-Sicherung für Dateifreigabe.

Was ist passiert

docker-compose up -d

Laufen

Creating network "xxx" with the default driver
Creating xxx_architecture_mysqldata_1 ... done
Creating xxx_mailhog_1   ... done
Creating xxx_architecture_mysql_1     ... done
Creating xxx                      ... done

Während der Arbeit ist jedoch ein durch MySQL verursachter Fehler aufgetreten.

Ich werde überprüfen

docker ps

Zuerst

docker ps

Ich habe überprüft, was los war, aber der MySQL-Container schien nicht aktiv zu sein. Ich habe auch versucht, Docker Exec zu verwenden, um es in einen MySQL-Container zu legen ...

Error response from daemon:Container Die Container-ID wird nicht ausgeführt

Es war nicht gut

Als ich Docker komponierte, stand dort "fertig", also dachte ich, es wäre fertig.

Schauen Sie sich das Protokoll an

In einem solchen Fall kann ich nichts sagen, ohne auf das Protokoll zu schauen, daher werde ich das Protokoll vorerst überprüfen.

Docker-Protokolle Container-ID

Das Protokoll sieht so aus

2020-11-17 07:30:22+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.19-1debian10 started.
2020-11-17 07:30:23+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2020-11-17 07:30:23+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.19-1debian10 started.
2020-11-17T07:30:24.278825Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2020-11-17T07:30:24.279399Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19) starting as process 1
2020-11-17T07:30:24.298133Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
2020-11-17T07:30:26.062069Z 1 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server ('2') and data dictionary ('0').
2020-11-17T07:30:26.064235Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2020-11-17T07:30:26.064751Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-11-17T07:30:26.944800Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.19)  MySQL Community Server - GPL.

↓ Hier ist etwas ausgefallen

2020-11-17T07:30:26.064235Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2020-11-17T07:30:26.064751Z 0 [ERROR] [MY-010119] [Server] Aborting

Versuchen Sie es vorerst wieder aufzubauen

Es war nervig, verschiedene Dinge zu googeln und ich habe es wieder aufgebaut.

docker-compose build --no-cache

Nachdem der Build abgeschlossen ist, werfen wir einen Blick auf die Protokolle mit Docker-Protokollen.

2020-11-17 08:07:48+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.19-1debian10 started.
2020-11-17 08:07:49+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2020-11-17 08:07:49+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.19-1debian10 started.
2020-11-17T08:07:49.831146Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2020-11-17T08:07:49.831363Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19) starting as process 1
2020-11-17T08:07:49.854161Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
2020-11-17T08:07:51.391894Z 1 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server ('2') and data dictionary ('0').
2020-11-17T08:07:51.392387Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2020-11-17T08:07:51.392606Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-11-17T08:07:52.248666Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.19)  MySQL Community Server - GPL.

Es ist komisch

Die Lösung

Dies https://stackoverflow.com/questions/64146845/mysql-not-starting-in-a-docker-container-on-macos-after-docker-update

In den Docker Desktop-Einstellungen> Experimentelle Funktionen Use gRPC FUSE for file sharing Deaktivieren und anwenden und neu starten

Danach wurde Docker-Compose normal gestartet.

Übrigens verwendet ein anderes Projekt MySQL 5.7 mit fast denselben Einstellungen, und es gab kein Problem, selbst wenn dort die Verwendung von gRPC FUSE für die Dateifreigabe aktiviert war. Ist es ein Problem, das durch verschiedene Versionen von MySQL verursacht wird?

Recommended Posts

Der MySQL-Container startet nicht in Docker
Localhost3000 wird in der Docker / Rails-Entwicklung nicht gestartet.
Die Docker-Test-DB wird nicht gestartet
Container startet nicht mit Docker-Compose
[Docker] Starten Sie den Container, starten Sie die Bash im Container und löschen Sie das Bild
Japanische Einstellungen für MySQL im Docker-Container
Docker für Windows: Der MySQL-Container wird bei der Migration von Hyper-v auf WSL2 nicht gestartet
WSL2 + Docker Desktop für Windows startet nicht nur den MySQL-Container
Terminal startet nicht
[Docker] Stellt keine Verbindung zur MySQL Workbench her ... Einstellungen für die DB-Container-Portweiterleitung
Bei der Bundle-Installation wird mysql2 nicht installiert
Docker Compose startet nicht mit der Fehleranzeige docker.credentials.errors.InitializationError
[Linux] Starten Sie den Apache-Container mit Docker
Bearbeiten Sie MySQL mit Befehlen in der Docker-Umgebung
JavaScript (Vanille) reagiert in Rails nicht.
Die SQL-Datei wird nicht in Docker-Compose ausgeführt
[Docker] Starten Sie den Container so schnell wie möglich
[NetBeans] Story, wenn sie nicht gestartet wird
So starten Sie einen Docker-Container mit einem in einer Batchdatei bereitgestellten Volume
So überprüfen Sie das Protokoll im Docker-Container
So aktualisieren Sie eine vorgefertigte Datei in einem Docker-Container
Eclipse wird nach der Installation von Java 11 nicht gestartet
Kleiner Docker Container
Worauf ich in MySQL 5.5-> 5.7 gestoßen bin
Docker + Spring-Boot-Start
@BeforeStep funktioniert nicht mit Spring-Batch-Tasklet
Die Geschichte, wenn der Container nicht mit Docker-Compose gestartet wird und ein Fehler auftritt
Wenn Docker für Mac 2.4.0.0 keine Dateiänderungen widerspiegelt
Hivernate Validator funktioniert nicht in der WAS Liberty-Umgebung
Starten Sie den Container automatisch
Docker-Container-Nutzungsszene
Kopieren Sie den Dateiinhalt und fügen Sie ihn in den Ubuntu Docker-Container ein
So erhalten Sie das Protokoll, wenn install4j nicht gestartet wird