python“u mysql”u exceptions.ProgrammingError:(2014,“命令不同步;您现在不能运行此命令”)

python“u mysql”u exceptions.ProgrammingError:(2014,“命令不同步;您现在不能运行此命令”),python,django,python-2.7,python-3.x,django-models,Python,Django,Python 2.7,Python 3.x,Django Models,我正在尝试在centos计算机上运行现有项目。我从requirements.txt安装了软件包,安装成功。但在运行“python manage.py runserver”时,我得到了以下回溯 [root@localhost bv]# python manage.py runserver Validating models... Unhandled exception in thread started by <bound method Command.inner_run of <d

我正在尝试在centos计算机上运行现有项目。我从requirements.txt安装了软件包,安装成功。但在运行“
python manage.py runserver
”时,我得到了以下回溯

[root@localhost bv]# python manage.py runserver
Validating models...

Unhandled exception in thread started by <bound method Command.inner_run of <django.contrib.staticfiles.management.commands.runserver.Command object at 0x98da9ec>>
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 91, in inner_run
    self.validate(display_num_errors=True)
  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")
[root@localhostbv]#python manage.py runserver
正在验证模型。。。
由启动的线程中存在未处理的异常
回溯(最近一次呼叫最后一次):
文件“/usr/local/lib/python2.7/site packages/django/core/management/commands/runserver.py”,第91行,在内部运行
self.validate(display\u num\u errors=True)
文件“/usr/local/lib/python2.7/site packages/django/core/management/base.py”,第266行,在validate中
num\u errors=get\u validation\u errors(s,app)
文件“/usr/local/lib/python2.7/site packages/django/core/management/validation.py”,第103行,在get\u validation\u errors中
connection.validation.validate_字段(e、opts、f)
文件“/usr/local/lib/python2.7/site packages/django/db/backends/mysql/validation.py”,第14行,在validate_字段中
db\u version=self.connection.get\u server\u version()
get_服务器版本中的文件“/usr/local/lib/python2.7/site packages/django/db/backends/mysql/base.py”,第415行
self.cursor().close()
文件“/usr/local/lib/python2.7/site packages/debug_toolbar/utils/tracking/_init__.py”,第9行,换行
返回回调(原始,*args,**kwargs)
文件“/usr/local/lib/python2.7/site packages/debug_toolbar/panels/sql.py”,第21行,在游标中
结果=原始(自身)
游标中的文件“/usr/local/lib/python2.7/site packages/django/db/backends/_init__.py”,第306行
cursor=self.make\u debug\u cursor(self.\u cursor())
文件“/usr/local/lib/python2.7/site packages/django/db/backends/mysql/base.py”,第387行,在光标处
self.connection=Database.connect(**kwargs)
文件“/usr/local/lib/python2.7/site packages/MySQL_-python-1.2.3-py2.7-linux-i686.egg/MySQLdb/_-init__.py”,第81行,在Connect中
返回连接(*args,**kwargs)
文件“/usr/local/lib/python2.7/site packages/MySQL\u python-1.2.3-py2.7-linux-i686.egg/MySQLdb/connections.py”,第215行,在__
self.set\u character\u set(字符集)
文件“/usr/local/lib/python2.7/site packages/MySQL\u python-1.2.3-py2.7-linux-i686.egg/MySQLdb/connections.py”,第294行,在set\u character\u set中
超级(连接,自)。集\字符集\字符集(字符集)
_mysql_exceptions.ProgrammingError:(2014,“命令不同步;您现在无法运行此命令”)
需要帮助来解决这个问题。
谢谢

您可以尝试在现有数据库上运行-

python manage.py inspectdb

这将输出new models.py,现在将新生成的models.py与您的models.py进行比较。py

如果要执行许多sql语句,请不要使用user
cur.execute(sql)

更好的方法是使用
cur.executemany(sql)

这将导致一些错误

sql = "insert into test(name, age) value('Joe', '28');insert into test(name, age) value('xxtime', '15');"
    cursor = db.cursor()
    cursor.execute(sql)
    db.commit()
exp 2:你可以用这个来代替

  sql = "insert into test(name, age) value(%s, %s);"
    cursor = db.cursor()
    cursor.executemany(sql,[('Joe', '28'),('xxtime', '15')])
    db.commit()

重新安装python-mysql@NileshG为什么要重新安装python mysql。Mysql配置正确,我可以通过命令提示符查看数据库。我安装了Mysql connector 1.2.3。此外,我还分别安装了Mysql和python。如果我同时运行syncdb,我会遇到与我仔细检查过的相同的错误。我在运行此命令时遇到了相同的问题。需要帮助解决。