python - django 无法通过套接字连接到本地 MySQL 服务器 '/var/run/mysqld/mysqld.sock

标签 python mysql django

我已经创建了一个虚拟环境并安装了以下内容:

sudo apt-get install libmysqlclient-dev
sudo pip install MySQL-python

我的设置是:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql', 
    'NAME': 'DB_NAME',
    'USER': 'DB_USER',
    'PASSWORD': 'DB_PASSWORD',
    'HOST': 'localhost', 
    'PORT': '3306',

}

当我执行 manage.py syncdb 时,它给出了错误提示 2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock ' (2)")

我不知道这里有什么问题...... 我搜索了一下...主要是我发现如果我使用 virtualenvironment 那么上面的设置就足够了...这里有什么问题???

最佳答案

安装mysql服务器

sudo apt-get install mysql-server

然后为您的目的创建一个数据库:

mysql -u root -p --execute "create database DB_NAME; grant all on DB_NAME.* to DB_USER@localhost identified by 'DB_PASSWORD';"

那你应该没问题。

我要指出的是,mysql搜索套接字的困惑,即使指定了一个端口,是因为mysql在指定localhost作为地址时默认为一个套接字,如果你想使用tcp/ip 那么你应该在那里放一个像 127.0.0.1 这样的地址。

关于python - django 无法通过套接字连接到本地 MySQL 服务器 '/var/run/mysqld/mysqld.sock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27589604/

相关文章:

python - 我怎么知道要安装哪个版本的 pip 包?

mysql - 使用逗号分隔列表在列中查找逗号分隔值

Django 复选框字段

python - Django 找到测试但无法导入它们

django - sorl 缩略图不起作用

python - BeagleBone 上的 Python 包 Kivy 出现问题

python - pylint 如何记住之前运行的分数?

python - 获取 Pandas 数据框中选定值的行和列标签

php - Apache 非常高的页面加载时间

php - 使用while循环从另一个表获取总行数时MYSQL慢查询