Are there any techniques or tools to work with SQLite on a medium size/traffic/concurrency DB environment?
-
If the motivation for this question (I know it's been ages) and the reason anyone else reading this question is to have a extremely light weight DB that you can run on your local machine in client/server mode the right answer is likely FirebirdSQL.Sameera– Sameera2025年05月28日 21:42:34 +00:00Commented May 28 at 21:42
2 Answers 2
As stated before, sqlite is not a client-server application, and it is not built for highly concurrent operations.
Nevertheless, you can make it "sort of client-server", if you use ssh.
ssh user@host sqlite3 databasefile "select * from table"
works.
-
1Is this considered "client-server" because you've encrypted the connection?Robert Harvey– Robert Harvey2018年01月18日 16:06:20 +00:00Commented Jan 18, 2018 at 16:06
-
5No, it is just because of a network between the machine which hosts the db and the machine accessing the db.ddeimeke– ddeimeke2018年01月20日 07:26:31 +00:00Commented Jan 20, 2018 at 7:26
No, SQLite doesn't present a network endpoint - it is only accessible via the filesystem. It does support concurrent access from multiple processes on the same machine but at a very coarse-grained level (DML locks an entire table). So you could have a dozen Apache httpd processes all with a SQLite database on the local disk open, all doing SELECT
s and it would work just fine. But really, it's the wrong tool for the job - I'd use Postgres in this scenario.