当我使用命令“python manage.py makemigrations”(与键入“python manage.py runserver”相同)时,它抛出了这个错误。然后我检查了用户的权限。代码和结果如同fllows。
mysql> select host,user from mysql.user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| % | root |
| % | zhuxin |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
| localhost | zhuxin |
+-----------+---------------+
mysql> show grants for 'zhuxin'@'%';
+---------------------------------------------------------------+
| Grants for zhuxin@% |
+---------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'zhuxin'@'%' WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `blogdb`.* TO 'zhuxin'@'%' |
+---------------------------------------------------------------+
mysql> show grants for 'root'@'%';
+--------------------------------------------------+
| Grants for root@% |
+--------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'%' |
| GRANT ALL PRIVILEGES ON `blogdb`.* TO 'root'@'%' |
+--------------------------------------------------+
我已经尝试了一切来解决它,但没有用。
您需要在项目settings.py中进行更改。为您的数据库提供USER
和PASSWORD
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'myproject',
'USER': 'root',
'PASSWORD': 'rootpassword',
'HOST': 'localhost',
'PORT': '',
}
}
检查数据库用户名和密码。很多时候,我们打字错误。它与数据库用户名和密码不匹配,因此会出现此错误。我遇到了这个错误并相信我,这是我非常糟糕的经历。