首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django项目python manage.py同步数据库错误

django项目python manage.py同步数据库错误
EN

Stack Overflow用户
提问于 2015-05-30 14:42:25
回答 1查看 216关注 0票数 1

我试图让我的Django项目在Ubuntu14.04上工作,但我得到一个错误消息:

我从命令行创建了我的数据库: root@ubuntu:~/ my _blog# mysql -u root -p

代码语言:javascript
复制
 mysql> create database cs01 default charset = utf8;

我的settings.py文件包含:

代码语言:javascript
复制
DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
    'NAME': 'cs01',                      # Or path to database file if using sqlite3.
    'USER': 'root',                      # Not used with sqlite3.
    'PASSWORD': '',                  # Not used with sqlite3.
    'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
    'PORT': '',                      # Set to empty string for default. Not used with sqlite3.


root@ubuntu:~/my_blog# python manage.py syncdb

Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 443, in        execute_from_command_line
utility.execute()
File "/usr/local/lib/python2.7/dist-    packages/django/core/management/__init__.py", line 382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.7/dist- packages/django/core/management/base.py", line 196, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 231, in execute
self.validate()
File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 266, in validate
num_errors = get_validation_errors(s, app)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/validation.py", line 103, in get_validation_errors
connection.validation.validate_field(e, opts, f)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/validation.py", line 14, in validate_field
db_version = self.connection.get_server_version()
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py", line 415, in get_server_version
self.cursor().close()
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/__init__.py", line 317, in cursor
cursor = self.make_debug_cursor(self._cursor())
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py", line 387, 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)
_mysql_exceptions.OperationalError: (1045, "Access denied for user       'root'@'localhost' (using password: NO)") 
EN

回答 1

Stack Overflow用户

发布于 2015-05-31 00:21:57

mysql似乎在抱怨,因为您试图使用django设置文件中的空/空密码字段访问您创建的数据库(以root用户身份,并可能使用root密码)。我认为你要么将root密码添加到你的设置文件中,要么(如果你对将你的root密码放在设置中感到不安)丢弃你的数据库,并创建一个新的凭据,你可以把它放在你的设置中-这样你的mysql数据库设置和你的django数据库设置就会匹配。

如果你这样做了,但你的数据库仍然有权限问题,你可能不得不调整你的mysql配置文件;如果必要的话,应该有大量的在线文档向你展示如何这样做。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30543173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档