2010-10-31 71 views
3

我在Ubuntu10上。 創建sqlite3 db已鎖定

touch development.db 

新的數據庫文件,希望我的遷移

rake db:migrate 

但被鎖定的錯誤

SQLite3::BusyException: database is locked 

如何可以鎖定?


更新它可以通過桑巴舞被鎖定。它是共享文件夾

回答

3

我已經遇到這個問題我自己。我發現避免將鎖置於這樣的文件上的唯一方法是將nobrl選項添加到您的掛載中。在/etc/fstab的條目可能是這個樣子:

//<SERVERNAME>/<REMOTEPATH> /<LOCALMOUNTPOINT>/<LOCALPATH> cifs credentials=/home/<LOCALUSERNAME>/.smbcredentials,iocharset=utf8,uid=1000,gid=1000,file_mode=0775,dir_mode=0775,nobrl 0 0 

這是鬆散的,在之後發現Ubuntu的wiki頁面:https://wiki.ubuntu.com/MountWindowsSharesPermanently

1

您應該嘗試rake db:create而不是touch。這總是適合我。也許遷移本身存在問題?

+0

我沒有分貝:create..i使用http://github.com/bmizerany/sinatra-activerecord – 2010-10-31 22:24:51

+0

遷移是好的..我已經在win7上嘗試過它們。一切都很正常 – 2010-10-31 22:26:35

1

我認爲它被鎖定了samba

我把development.db在其他非共享文件夾,一切都按預期