2013-12-10 5 views
0

Я пытаюсь запустить существующий проект. Я восстановил свою базу данных и установил все необходимые зависимости. При запуске syncdb я получил следующие ошибки.команда syncdb не работает должным образом

[[email protected] ]# python manage.py syncdb 
Traceback (most recent call last): 
    File "manage.py", line 11, in <module> 
    execute_manager(settings) 
    File "/usr/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 459, in execute_manager 
    utility.execute() 
    File "/usr/local/lib/python2.7/site-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/site-packages/django/core/management/base.py", line 196, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 231, in execute 
    self.validate() 
    File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 266, in validate 
    num_errors = get_validation_errors(s, app) 
    File "/usr/local/lib/python2.7/site-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/site-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/site-packages/django/db/backends/mysql/base.py", line 415, in get_server_version 
    self.cursor().close() 
    File "/usr/local/lib/python2.7/site-packages/debug_toolbar/utils/tracking/__init__.py", line 9, in wrapped 
    return callback(original, *args, **kwargs) 
    File "/usr/local/lib/python2.7/site-packages/debug_toolbar/panels/sql.py", line 21, in cursor 
    result = original(self) 
    File "/usr/local/lib/python2.7/site-packages/django/db/backends/__init__.py", line 306, in cursor 
    cursor = self.make_debug_cursor(self._cursor()) 
    File "/usr/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 387, in _cursor 
    self.connection = Database.connect(**kwargs) 
    File "/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-linux-i686.egg/MySQLdb/__init__.py", line 81, in Connect 
    return Connection(*args, **kwargs) 
    File "/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-linux-i686.egg/MySQLdb/connections.py", line 215, in __init__ 
    self.set_character_set(charset) 
    File "/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-linux-i686.egg/MySQLdb/connections.py", line 294, in set_character_set 
    super(Connection, self).set_character_set(charset) 
_mysql_exceptions.ProgrammingError: (2014, "Commands out of sync; you can't run this command now") 
+0

Могу ли я получить какое-либо решение этой проблемы – user2681579

ответ

0

Вы составляете рецепты sql?

Например: cursor.execute ('show databases; show tables;')?

Если да, то разделите их:

cursor.execute ('') cursor.close переподключение повтор

+0

Где я должен проверить это, будь то в models.py моего приложения или в cursors.py – user2681579

+0

Можете ли вы объяснить мне, куда внесены изменения. – user2681579

0

Как @Kalinakov упоминается эта ошибка из-за какой-то неправильного использования курсоров в ваш код. Пожалуйста, найдите в коде код cursor.execute и начните отладку.

Также обратите внимание на ниже пост, который упоминает, почему один получает такого рода ошибок и что такое решение - Ways to avoid MySQLdb's "Commands out of sync; you can't run this command now" (2014) exception

0

Давайте начнем небольшой отладки тур:

  • 1) Является ли ваша база данных правильно настроена? Давайте попробуем его без базы данных mySQL и SQlite. Если у вас нет каких-либо ошибок в программировании, SQLite начнет прямо и синхронизирует вашу базу данных. Для этого вам нужно пойти в settings.py и перенастроить вашу базу данных что-то вроде здесь:

    DATABASES = { 
    'default': { 
    'ENGINE': 'django.db.backends.sqlite3', 
    'NAME': 'database.db',      
    
    'USER': '', 
    'PASSWORD': '', 
    'HOST': '',      
    'PORT': '',      
    

    }}

  • 2) Теперь запустите syncdb и посмотреть, если он работает. Если это работает сейчас, вам, вероятно, потребуется перенастроить базу данных: name, password, host и port. Если SQlite не работает - пожалуйста, вернитесь сюда и сообщите нам точные сообщения об ошибках.

Смежные вопросы