Mac 网络上 SQLite 中的“数据库已锁定”错误

2 sqlite file-locking

我使用 SQLite(实际上是 PySQLite)创建了一个简单的数据库。当我从本地机器(即 Windows 机器驱动器上的程序和数据库文件)查询或写入数据库时​​,它工作正常。但是,当我将数据库文件复制到我的网络驱动器(时间胶囊)时,Windows 机器虽然可以看到这些文件并且对驱动器具有完全的读/写访问权限,但它甚至会给我一个“SQL 错误:数据库被锁定”执行简单选择时!

Mac 上的网络查询工作正常。

没有花哨的多访问——只有一台机器打开了数据库。似乎是一些奇怪的 Mac 网络问题。发生在 Python 程序或 SQLite3 命令行中。我正在使用 SQLite 3.6.14.2。

有人见过这个问题吗?有什么办法修复吗?真的不想过多地使用 MYSQL,因为这是一个简单的单用户程序,但我想在多台机器上使用它。

谢谢。

小智 5

我不知道它是否可以在 MAC 上完成,在 Debian 上我必须使用nobrl选项挂载 samba 目录。

从 mount.cifs(8):

  nobrl
      Do not send byte range lock requests to the server. This is
      necessary for certain applications that break with cifs
      style mandatory byte range locks (and most cifs servers do
      not yet support requesting advisory byte range locks).
Run Code Online (Sandbox Code Playgroud)