django:mysql:error(1045, "Access denied for user 'root'@'localhost' (using password: NO)")

django:mysql:error(1045, "Access denied for user 'root'@'localhost' (using password: NO)")

我是新手,刚接触Django,想实现django和mysql的连接,我在linux环境下搭建了django1.11.17和mysql8.0。

当我键入命令时

python3 manage.py makemigrations 

然后报错

MySQLdb._exceptions.OperationalError: (1045, "Access denied for user 'django1'@'localhost' (using password: NO)")

在论坛上看了很多关于这个错误的问题,都说是账号密码问题, 所以,我创建了一个数据库 Firstproject,然后创建了一个新用户 Django1,将 Firstproject.* 的所有权限授予 django1@%,并刷新了权限。 但是我设置了账号权限后,还是出现这个问题。

Setting.py关于mysql配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME':'Firstproject',
        'USER':'django1',
        'PASSSWORD':'asdewq',
        'HOST':'localhost',
        'PORT':'3306'
    }
}

有关错误的更多详细信息

Traceback (most recent call last):
  File "/home/ccheng/.local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 213, in ensure_connection
    self.connect()
  File "/home/ccheng/.local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 189, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/home/ccheng/.local/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 274, in get_new_connection
    conn = Database.connect(**conn_params)
  File "/home/ccheng/.local/lib/python3.6/site-packages/MySQLdb/__init__.py", line 84, in Connect
    return Connection(*args, **kwargs)
  File "/home/ccheng/.local/lib/python3.6/site-packages/MySQLdb/connections.py", line 164, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
MySQLdb._exceptions.OperationalError: (1045, "Access denied for user 'django1'@'localhost' (using password: NO)")

谁能指出我错在哪里?

显然,你需要mysql的正确用户名和密码。确保你得到了密码并且你使用的mysql用户有网络访问权限,可以在/etc/my.cnf中找到。祝你好运^_^

单词 "PASSSWORD" 拼写错误。