微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将MySQL与Django一起使用-用户'@'localhost的访问被拒绝

如何解决将MySQL与Django一起使用-用户'@'localhost的访问被拒绝

您的用户无权访问数据库。使用以下命令来设置数据库

DROP DATABASE IF EXISTS `mydb`;
CREATE DATABASE `mydb`
    DEFAULT CHaraCTER SET utf8
    DEFAULT COLLATE utf8_general_ci;

USE 'MysqL';
GRANT ALL PRIVILEGES ON mydb.* TO 'mydb_user'@'localhost' IDENTIFIED BY 'your_password'

WITH GRANT OPTION;
FLUSH PRIVILEGES;

另外,您需要具有足够的特权才能运行它。然后将其另存为script.sql

$MysqL -u root -p < script.sql

比在需要确保正确设置数据库设置的settings.py上

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.MysqL',
        'NAME': 'mydb',                  
        'USER': 'mydb_user',             
        'PASSWORD': 'your_password',                  
        'HOST': '',                     
        'PORT': '',                      
    }
}

python manage.py syncdb

到此为止。

解决方法

因此,我通过以下资源学习Django(1、3、1,“最终”,0):http
:
//www.djangobook.com/en/2.0/chapter05/

我通过Synaptic安装了“ mysql-server”和“ python-mysqldb”。我在settings.py中更改了相关设置。

上面提到的书告诉我们从manage.py shell运行:

>>> from django.db import connection
>>> cursor = connection.cursor()

运行以下命令后出现此错误:

OperationalError: (1044,"Access denied for user ''@'localhost' to database 'mydb'")

  Traceback (most recent call last):
  File "<console>",line 1,in <module>
  File "/usr/lib/python2.7/dist-packages/django/db/backends/__init__.py",line 250,in cursor
    cursor = self.make_debug_cursor(self._cursor())
  File "/usr/lib/python2.7/dist-packages/django/db/backends/mysql/base.py",line 322,in _cursor
    self.connection = Database.connect(**kwargs)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/__init__.py",line 81,in Connect
    return Connection(*args,**kwargs)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py",line 187,in __init__
    super(Connection,self).__init__(*args,**kwargs2)
OperationalError: (1044,"Access denied for user ''@'localhost' to database 'mydb'")

MySQL在我第一次安装时确实要求我设置一个根密码,在这里可以使用吗?或者是别的什么?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。