【问题标题】:Connecting Django 1.5.4 to Mamp MySQL - Can't connect to local server将 Django 1.5.4 连接到 Mamp MySQL - 无法连接到本地服务器
【发布时间】:2013-10-01 21:30:32
【问题描述】:

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

MAMP正在运行

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

Django settings.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)")

谢谢

【问题讨论】:

  • 数据库真的运行在可以通过 Django 访问的 ip 和端口上吗?涉及防火墙?
  • 我对您的评论感到困惑,但 Mamp 端口是默认端口(apache 8888、MySQL 8889)无论如何要包括这个?
  • 是我们的系统还是您的系统?自己检查您的系统并使用您的操作系统工具检查 IP 地址和使用的端口...接近投票...

标签: python mysql database django mamp


【解决方案1】:

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

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

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

【讨论】:

    猜你喜欢
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    • 2013-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多