Heim  >  Artikel  >  Datenbank  >  Hier sind einige Titeloptionen, die dem von Ihnen gewünschten Frage-Antwort-Format folgen: Option 1 (direkter): * Django in Docker Compose: Warum kann ich keine Verbindung zu meiner MySQL-Datenbank herstellen? Option 2 (Weitere Spez

Hier sind einige Titeloptionen, die dem von Ihnen gewünschten Frage-Antwort-Format folgen: Option 1 (direkter): * Django in Docker Compose: Warum kann ich keine Verbindung zu meiner MySQL-Datenbank herstellen? Option 2 (Weitere Spez

Linda Hamilton
Linda HamiltonOriginal
2024-10-28 08:24:02196Durchsuche

Here are a few title options, following the question-answer format you requested:

Option 1 (More direct):

* Django in Docker Compose: Why Can't I Connect to My MySQL Database?

Option 2 (More specific):

*

Django in Docker Compose: MySQL-Verbindung herstellen

Django mit einer MySQL-Datenbank in einer Docker-Umgebung zu verbinden kann eine Herausforderung sein. Dieser Artikel befasst sich mit dem Problem, das beim Versuch, die Verbindung herzustellen, auftrat und zu folgendem Fehler führte: „Es konnte keine Verbindung zum MySQL-Server auf ‚mariadb55‘ hergestellt werden (111 „Verbindung abgelehnt“).“

Zunächst die Datenbank Der Zugriff war über Docker Compose up db möglich, und eine lokale Instanz konnte über den Python-Runserver manage.py verbunden werden. Die Verbindung innerhalb von Django schlug jedoch fehl.

Bei weiteren Untersuchungen wurde festgestellt, dass das Problem auf die Verwendung eines falschen Ports und Hostnamens in der Konfigurationsdatei „settings.py“ von Django zurückzuführen war.

Lösung:

Die Lösung bestand darin, sicherzustellen, dass der richtige Port und Hostname in der Datei settings.py festgelegt wurden. Konkret sollten die Einstellungen „db“ als Host und „3306“ als Port verwenden.

Einstellungen.py aktualisiert:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'test',
        'USER': 'belter',
        'HOST': 'db',
        'PORT': '3306',
        'PASSWORD': 'belter_2017',
        'default-character-set': 'utf8',
        'OPTIONS': {
            'sql_mode': 'traditional',
        }
    }
}

Zusätzlich ein Extra Der Befehl wurde zur Docker Compose-Konfigurationsdatei hinzugefügt, um zu überprüfen, ob der MySQL-Port geöffnet war, bevor versucht wurde, eine Verbindung von Django herzustellen.

Durch die Anwendung dieser Änderungen wurde die Verbindung zwischen Django und MySQL innerhalb der Docker-Umgebung erfolgreich hergestellt.

Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, die dem von Ihnen gewünschten Frage-Antwort-Format folgen: Option 1 (direkter): * Django in Docker Compose: Warum kann ich keine Verbindung zu meiner MySQL-Datenbank herstellen? Option 2 (Weitere Spez. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn