無法在Docker-Compose 中連接到MySQL 資料庫
嘗試透過docker-compose 在Docker 中執行Django 和MariaDB 時,使用者可能會遇到以下錯誤:
django.db.utils.OperationalError: (2003, 'Can\'t connect to MySQL server on \'mariadb55\' (111 "Connection refused")')
要解決此問題,請務必確保在Django 設定檔中使用正確的連接埠和主機。具體來說,連接埠應設定為3306而不是3302,主機應設定為'db' 而非'mariadb55' 或'127.0.0.1'。
以下是更新的Django 設定檔的範例:
<code class="python">DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'belter', 'HOST': 'db', # Use 'db' instead of 'mariadb55' or '127.0.0.1' 'PORT': '3306', # Use 3306 instead of 3302 'PASSWORD': 'belter_2017', 'default-character-set': 'utf8', 'OPTIONS': { 'sql_mode': 'traditional', } } }</code>
此外,確保可以在連接埠3306 上存取MariaDB 容器也很重要,可以使用原始回應中提供的check_db.py 腳本進行驗證。
依照這些步驟,使用者應該能夠在 Docker-compose 中連接到 MySQL 資料庫並解決連線被拒絕的錯誤。
以上是為什麼我無法在 Docker-Compose 中連接到我的 MySQL 資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!