3

我正在尝试将我的 Django 应用程序连接到 MAMP mysql 数据库。我已经有大约一个月没有使用 django 了,并且对新的数据库格式感到惊讶。我不确定如何访问我的 Mamp 数据库。

MAMP正在运行

MySQL 正在运行,我在 phpMyAdmin 上创建了一个数据库(称为“教程”)

Django 设置.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': os.path.join(BASE_DIR, '~/tutorial.db'),
    }
}

这是我唯一改变的地方。

当我运行 $ python manage.py runserver 我收到此错误:

...
  File "/Users/Marcus/sites/venv/lib/python2.7/site-packages/MySQLdb/__init__.py", line 81, in Connect
    return Connection(*args, **kwargs)
  File "/Users/Marcus/sites/venv/lib/python2.7/site-packages/MySQLdb/connections.py", line 187, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")

谢谢

4

1 回答 1

2

我知道这是一个老问题。如果有人仍在寻找答案,请添加答案。

快速简单的解决方案是创建一个符号链接,以便操作系统可以找到正确的套接字。

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
于 2016-08-11T05:52:48.157 回答