我正在按照this教程使用MySQL构建Django应用。
我正在使用Mac的XAMPP-VM。我为Django设置了数据库设置:
df = df.append(df.set_index(['Type','Val_1','Val_2'])['Val'].repeat(df['repeat_num']).reset_index(),
sort=False, ignore_index=True)
我已经在XAMPP上启动了MySQL,但是当我运行python manage.py migration时,我得到了:
django.db.utils.OperationalError:(2002年,“无法连接到本地MySQL 服务器通过套接字'/tmp/mysql.sock'(2)“)
谢谢您的帮助!
答案 0 :(得分:0)
默认情况下,mysql客户端尝试通过/tmp/mysql.sock进行连接。您只需要使用符号链接将其指向XAMPP的套接字即可。
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
答案 1 :(得分:0)
我会尝试将您的HOST从“本地主机”更改为“ 127.0.0.1”。通常,这可以纠正我的麻烦。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djangoproject',
'USER': 'root',
'PASSWORD': '',
'HOST': '127.0.0.1',
'PORT': '8080',
}
}
答案 2 :(得分:0)
只需将HOST
从localhost
更改为IP 127.0.0.1
。这样可以解决您的问题。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djangoproject',
'USER': 'root',
'PASSWORD': '',
'HOST': '127.0.0.1',
'PORT': '8080',
}
}
答案 3 :(得分:0)
我在mysql最新版本中遇到了同样的错误,因此我降级到mysql 5.7.0,并且可以正常工作。
答案 4 :(得分:0)
这可能是由于安装了XAMPP-VM而非本地XAMPP。卸载XAMPP-VM并安装XAMPP。