首页 >数据库 >mysql教程 >为什么我无法在 Docker-Compose 中连接到我的 MySQL 数据库?

为什么我无法在 Docker-Compose 中连接到我的 MySQL 数据库?

Patricia Arquette
Patricia Arquette原创
2024-10-29 08:16:30239浏览

Why Can't I Connect to My MySQL Database in Docker-Compose?

无法在 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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn