2013-09-26 129 views
3

我試圖將我的Django應用程序連接到MAMP mysql數據庫。大約一個月我沒有使用django,並對新的數據庫格式感到驚訝。我不知道如何訪問我的Mamp數據庫。將Django 1.5.4連接到Mamp MySQL - 無法連接到本地服務器

MAMP運行

MySQL正在運行&我建立了phpMyAdmin的數據庫(所謂的 「教程」)

的Django的settings.py

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

這是我唯一擁有的東西改變。

當我運行$蟒蛇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)") 

感謝

+0

數據庫確實一個IP和端口,通過Django是可達的運行?涉及防火牆? –

+0

我很困惑你的評論,但Mamp端口是默認值(apache 8888,MySQL 8889)無論如何包括這個? – Marcus

+0

是我們的系統還是你的嗎?自己檢查你的系統,並使用你的操作系統工具檢查IP地址和使用的端口...接近downvote ... –

回答

1

我知道這是一個老問題。 如果有人仍在尋找答案,請添加答案。

Quick and easy solution is to create a symlink so OS can find the correct socket.

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