[英]Running syncdb on Django project not working: Can't create/write to file
當我跑步時:
$ 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)")
關於如何調試的任何想法? 我已經給數據庫用戶它需要的所有權限。 不知道MySQL在這里停滯不前。
更新:這里的問題最終是我安裝了MySQL多次(第一次安裝32位,然后當我意識到應該這樣做時安裝了64位),盡管我遵循了一些有關如何卸載MySQL的說明,但這些說明與雪豹略有不同。 實際執行卸載和全新安裝后,此問題就消失了。
問題是如何調試問題,正如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后端將無法解決任何問題。)
這可能會有所幫助:
agos @ server:〜$ perror 2
操作系統錯誤代碼2:無此類文件或目錄
您的MySQL是否配置正確? 嘗試自己通過mysql
命令查詢它。
另外,如luc在評論中所建議,請嘗試使用sqlite。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.