SQLite3数据库被锁定

3

我正在使用Ubuntu10操作系统。 以下是创建新数据库文件的步骤:

touch development.db

我需要我的迁移。
rake db:migrate

但是遇到了锁定错误

SQLite3::BusyException: database is locked

如何将其锁定?!


更新:它可以通过Samba进行锁定。这是共享文件夹。

3个回答

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维基页面的简要介绍:https://wiki.ubuntu.com/MountWindowsSharesPermanently


1
你应该尝试使用rake db:create而不是touch。这对我总是有效的。也许迁移本身存在问题?

迁移很好。我在Win7上尝试过它们。一切正常。 - Igor Alekseev

1

我认为它被 samba 锁定了。

我将 development.db 放在其他非共享文件夹中,一切都按预期工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接