Python 在Django项目上运行syncdb不工作:Can';t创建/写入文件

Python 在Django项目上运行syncdb不工作:Can';t创建/写入文件,python,mysql,django,Python,Mysql,Django,当我跑步时: $ python manage.py syncdb 我得到以下输出: Creating table auth_permission Traceback (most recent call last): File "manage.py", line 11, in <module> execute_manager(settings) File "/Library/Python/2.6/site-packages/django/core/management

当我跑步时:

$ python manage.py syncdb
我得到以下输出:

Creating table auth_permission
Traceback (most recent call last):
  File "manage.py", line 11, in <module>
    execute_manager(settings)
  File "/Library/Python/2.6/site-packages/django/core/management/__init__.py", line 362, in execute_manager
    utility.execute()
  File "/Library/Python/2.6/site-packages/django/core/management/__init__.py", line 303, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 195, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 222, in execute
    output = self.handle(*args, **options)
  File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 351, in handle
    return self.handle_noargs(**options)
  File "/Library/Python/2.6/site-packages/django/core/management/commands/syncdb.py", line 78, in handle_noargs
cursor.execute(statement)
  File "/Library/Python/2.6/site-packages/django/db/backends/util.py", line 19, in execute
    return self.cursor.execute(sql, params)
  File "/Library/Python/2.6/site-packages/django/db/backends/mysql/base.py", line 84, in execute
    return self.cursor.execute(query, args)
  File "build/bdist.macosx-10.6-universal/egg/MySQLdb/cursors.py", line 173, in execute
  File "build/bdist.macosx-10.6-universal/egg/MySQLdb/connections.py", line 36, in defaulterrorhandler
_mysql_exceptions.InternalError: (1, "Can't create/write to file '/usr/local/mysql/data/wzhere/auth_permission.MYI' (Errcode: 2)")
创建表身份验证权限
回溯(最近一次呼叫最后一次):
文件“manage.py”,第11行,在
执行\u管理器(设置)
文件“/Library/Python/2.6/site packages/django/core/management/_init__.py”,第362行,在执行管理器中
utility.execute()
文件“/Library/Python/2.6/site packages/django/core/management/_init__.py”,执行中的第303行
self.fetch_命令(子命令)。从_argv(self.argv)运行_
文件“/Library/Python/2.6/site-packages/django/core/management/base.py”,第195行,运行于_-argv
self.execute(*args,**选项._dict__;
文件“/Library/Python/2.6/site packages/django/core/management/base.py”,第222行,在execute中
输出=self.handle(*args,**选项)
文件“/Library/Python/2.6/site packages/django/core/management/base.py”,第351行,在handle中
返回self.handle\u noargs(**选项)
handle_noargs中的文件“/Library/Python/2.6/site packages/django/core/management/commands/syncdb.py”,第78行
cursor.execute(语句)
文件“/Library/Python/2.6/site packages/django/db/backends/util.py”,执行中的第19行
返回self.cursor.execute(sql,params)
文件“/Library/Python/2.6/site packages/django/db/backends/mysql/base.py”,执行中的第84行
返回self.cursor.execute(查询,参数)
文件“build/bdist.macosx-10.6-universal/egg/MySQLdb/cursors.py”,第173行,执行
文件“build/bdist.macosx-10.6-universal/egg/MySQLdb/connections.py”,第36行,在defaulterrorhandler中
_mysql_exceptions.InternalError:(1,“无法创建/写入文件'/usr/local/mysql/data/wzhere/auth_permission.MYI'(错误代码:2)”)
关于如何调试有什么想法吗?我已经为数据库用户提供了它所需的所有权限。我不知道MySQL在这里遇到了什么阻碍

更新:这里的问题是我安装了多次MySQL(第一次是32位,当我意识到我应该这么做时是64位),尽管我遵循了一些关于如何卸载MySQL的说明,但对于雪豹来说,说明略有不同。一旦我真的进行了卸载和清理安装,这个问题就消失了。

这可能会有帮助:

agos@server:~$perror 2
操作系统错误代码2:没有这样的文件或目录

您的MySQL配置正确吗?尝试通过
mysql
命令自己查询它。

此外,正如luc在评论中所建议的那样,尝试使用sqlite。

问题是如何调试问题,正如Agos已经指出的,Errno 2是“没有这样的文件或目录”。您可能希望查看MySQL的数据目录,并检查该目录是否确实存在,是否具有正确的权限

shell> cd /usr/local/mysql/data/
shell> ls -ld *
drwx------    17 geert   admin         578 Oct  1 19:33 someabstract
上面应该给出目录列表(MySQL数据库)及其权限。检查“wzhere”目录是否特别。。 我应该说,你收到的错误信息有点奇怪

(在这种情况下,尝试另一个Django DB后端无法解决任何问题。)