通过网络向网络服务器提供 SQLite 数据库的最佳系统是什么?

通过网络向网络服务器提供 SQLite 数据库的最佳系统是什么?

我正在帮助设置一个 Web 服务,其中用户数据将存储在运行 Samba 的服务器上的 sqlite 数据库中,并且一个或多个 Web 服务器将在后端读取和写入这些数据库。我希望得到有关在全 Linux 环境中使用哪种网络文件系统的建议,以及任何其他想法

答案1

NFS 可能是您最好的选择。NFS 非常易于配置,很可能被证明是完成这项工作的最佳工具。如果您有 Windows,CIFS(Samba)是最佳选择,但在全 Linux 环境中,NFS 是最佳选择。

话虽如此,我同意 Ben S 的观点。如果唯一的选择是 sqlite(我希望不是),那么 NFS 就是最佳选择。但真正的 DBMS 才是更好的选择。

答案2

来自 sqlite文档

此外,许多网络文件系统实现的文件锁定逻辑都存在错误(在 Unix 和 Windows 上均如此)。如果文件锁定不能正常工作,则两个或多个客户端程序可能会同时修改同一数据库的同一部分,从而导致数据库损坏。

所以,非常小心!众所周知,NFS 不遵循 POSIX 行为,尤其是关于原子性。

答案3

我建议使用真正的多用户数据库。SQLite 是单用户应用程序的最佳选择,而不是多服务器。

答案4

这实际上不是 sqlite 的用途。这是可能的,但更强大的系统(并且更易于维护)将是一个简单的 mysql 安装,而不是整个文件服务器。

相关内容