这个问题有类似的问题,但我找不到任何能解决我问题的问题.
我正在研究django项目并进行了数据库更改,并希望将数据库更改迁移到生产环境.所以我跑了
python manage.py migrate
但是我收到了这个错误
OperationalError: (1045,"Access denied for user 'root'@'localhost' (using password: NO)")
根据我的理解,我必须没有权限进行迁移,但我确实尝试过
grant all privileges on *.* to root@localhost identified by 'password' with grant option;
以及它们的不同组合,但无济于事.
在我的local_settings.py我有
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.MysqL','USER': 'root','PASSWORD': 'password','HOST': '127.0.0.1','NAME': 'stratinvnet',},}
我试图将127.0.0.1更改为localhost,这似乎没有任何区别.我还尝试从DATABASES对象中删除密码.
对于它的价值,这是我在MysqL中的GRANTS表.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*5FE8B16533FAE91D61522C9A6811F3F709147255' WITH GRANT OPTION | | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION
这是用户表.
user | host | password | +------------+-----------+-------------------------------------------+ | root | localhost | *5FE8B16533FAE91D61522C9A6811F3F709147255 | | root | 127.0.0.1 | | | root | ::1 | | | | localhost | | | root | % | *944B67F866A66B9DDD96024A97EBFDC886FC41F6 | | PHPmyadmin | localhost | *5FE8B16533FAE91D61522C9A6811F3F709147255 |