运行 python manage py migrate 时出错

Posted

技术标签:

【中文标题】运行 python manage py migrate 时出错【英文标题】:Error while running python manage py migrate 【发布时间】:2019-09-22 18:37:48 【问题描述】:

我是 django 新手,我正在运行命令

python manage.py migrate

得到了这个错误。

(py1) G:\django\djangoproject1>python manage.py migrate Traceback (最近一次通话最后):文件“manage.py”,第 22 行,在 execute_from_command_line(sys.argv) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management__init__.py”, 第 364 行,在 execute_from_command_line utility.execute() 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management__init__.py", 第 356 行,执行中 self.fetch_command(subcommand).run_from_argv(self.argv) 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management\base.py", 第 283 行,在 run_from_argv self.execute(*args, **cmd_options) 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management\base.py", 第 327 行,执行中 self.check() 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management\base.py", 第 359 行,检查中 include_deployment_checks=include_deployment_checks,文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\management\commands\migrate.py”, 第 61 行,在 _run_checks 问题 = run_checks(tags=[Tags.database]) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\checks\registry.py”, 第 81 行,在 run_checks new_errors = check(app_configs=app_configs) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\core\checks\database.py”, 第 10 行,在 check_database_backends 中 issues.extend(conn.validation.check(**kwargs)) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\mysql\validation.py”, 第 9 行,检查中 issues.extend(self._check_sql_mode(**kwargs)) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\mysql\validation.py”, 第 13 行,在 _check_sql_mode 以 self.connection.cursor() 作为光标:文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\base\base.py”, 第 254 行,在光标中 返回 self._cursor() 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\base\base.py”, 第 229 行,在 _cursor 中 self.ensure_connection() 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\base\base.py", 第 213 行,在 ensure_connection self.connect() 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\utils.py”,行 94,在退出 六.reraise(dj_exc_type, dj_exc_value, traceback) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\base\base.py”, 第 213 行,在 ensure_connection self.connect() 文件 "C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\base\base.py", 第 189 行,连接中 self.connection = self.get_new_connection(conn_params) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\django\db\backends\mysql\base.py”, 第 274 行,在 get_new_connection 中 conn = Database.connect(**conn_params) 文件“C:\Users\Mahin\Envs\py1\lib\site-packages\MySQLdb__init__.py”,行 84,在连接 返回连接(*args,**kwargs)文件“C:\Users\Mahin\Envs\py1\lib\site-packages\MySQLdb\connections.py”, 第 164 行,在 init 中 super(Connection, self).init(*args, **kwargs2) django.db.utils.OperationalError: (1045, "Access denied for user 'root'@'localhost' (使用密码: YES)")

【问题讨论】:

这不是不言自明吗? MySQL 凭据不正确。 "Access denied for user 'root'@'localhost' (using password: YES)" 我应该在哪里改变这个? 【参考方案1】:

由于我应该神奇地知道您的 settings.py 数据库配置,并且我的帖子被删除,因为在没有“要求提问者澄清”的情况下没有回答问题,我正在重新发布以尝试提供帮助。 mysql db中root用户的默认密码是“”,即留空。现在,您的数据库与您在 settings.py 文件中提供的配置不匹配。进入您的 dbms 并确保数据库的设置与您在 settings.py 中提供的设置相匹配。

DATABASES = 
        'default': 
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'DB NAME',
            'USER': 'USER NAME',
            'PASSWORD':'USER PW',
            'HOST' : 'localhost',
        
    

如果这些与您的数据库匹配,您现在应该可以迁移了。

【讨论】:

以上是关于运行 python manage py migrate 时出错的主要内容,如果未能解决你的问题,请参考以下文章

运行 python manage py migrate 时出错

无法运行 python manage.py rusnerver

Django的manage.py runserver 可以长期运行吗

Django的manage.py runserver 可以长期运行吗

python命令行运行django项目, can't open file 'manage.py' 问题解决

运行“python manage.py syncdb”的“未知命令 syncdb”