连接远程sqlite3数据库

6 投票
2 回答
31345 浏览
提问于 2025-04-15 19:37

我可以通过以下方式连接到本地的sqlite3数据库(使用的是Mac OS X 10.5和Python 2.5.1):

conn = sqlite3.connect('/db/MyDb')

如果这个数据库在服务器上(比如在一个运行Ubuntu 8.04的服务器上,IP地址是10.7.1.71),而不是存储在本地,我该如何连接呢?

例如,这个方法似乎不起作用:

conn = sqlite3.connect('10.7.1.71./db/MyDb')

2 个回答

2

SQLite的常见问题解答里有一个和你问题相关的答案。它提到,虽然理论上可以通过远程文件系统实现多台机器的网络访问,但如果这个文件系统没有很好地支持锁机制,那么这种方式可能不太可靠。

不过,如果你只是从一台机器和一个进程同时访问数据库的话,应该是可以正常工作的,就像那一页所说的,这还要看你使用的远程文件系统的情况。

13

SQLite只能在本地使用。你需要先挂载远程文件系统,才能访问它。而且,不要试图让多台机器同时访问SQLite数据库;SQLite并不是为了这个设计的。如果你需要这样的功能,可以考虑使用PostgreSQL之类的数据库。

撰写回答