Django 尝试连接到错误的套接字



我正在尝试按照此处的说明设置 django 以连接到 google cloud sql:使用云 SQL 代理连接 MySQL 客户端。在我启动代理后:

./cloud_sql_proxy -dir=/cloudsql -instances=my-instance -credential_file=/app/keyfile.json > /logs/proxy.txt &

Django 无法连接到数据库,并在您尝试加载页面时给出此错误:

(2002, "无法通过套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器 (2)")

我是 unix 套接字的新手,所以我可能解释不正确,但在我看来,django 正在尝试连接到/var/run/mysqld/mysqld.sock 的套接字。

我在 Django 中的数据库配置是:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'HOSTS': '/cloudsql/my-instance-description',
        'NAME': 'main',
        'USER': '****',
        'PASSWORD': '****',
    }
}

我的解释是否正确? 如果是这样,我需要更改什么才能让 django 尝试连接到/cloudsql/my-instance-description 而不是默认的套接字?

我认为问题是错字。使用 HOST 而不是 HOSTS

相关内容

  • 没有找到相关文章