SQLite on server lazarus / 16-Databases ---------------------------------------------------------------------- amir.eng · 2022-03-23 14:50 Hello guys, I designed a program with encrypted SQLite database that you helped me about connectiong between them. All of system that are used the program were single user so far, but at a company all systems are srever and clients. As I know Sqlite is not working on Server, so I'm seeking a suitable database for my project. I know I can use SQLServer or MS Access database for the project, but SQLServer is not free and it has a huge size of installation package (free version of SQLServer is limited) and Access database is not powerful on Server/Client and it is also a small size of database (2GB). So I'm looking for a database which has this features : - Free (price = 0.0) - Small size of installation package (Or without needing any installation like SQLite which it has only a DLL) - Usable on Server/Client - Security of database (ecryption database like SQLite or set password on database so that users can't be able to see the content of database) I would appreciate your suggestions and comments. ---------------------------------------------------------------------- SymbolicFrank · 2022-03-23 15:00 PostgreSQL is nice. ---------------------------------------------------------------------- Zvoni · 2022-03-23 15:01 1) MS Access is not a "server"-Database, either. It's filebased like SQLite 2) What OS is running on that Machine which is going to serve as "server"? 3) Look at Postgres, MySQL/Maria or Firebird with Postgres being the "best" regards "License". As for size of Install-Packages: No Idea. Look at the Distributions, or someone else wants to chip in ---------------------------------------------------------------------- amir.eng · 2022-03-23 15:08 We works on Windows OS. ---------------------------------------------------------------------- af0815 · 2022-03-23 18:20 If you have a MS-Sql windows based enviroment, the free (of charge) version of MS-SQL Server is a good choice. And MS-SQL Server is also running on Ubuntu LTS Versions of Linux too. We use the (i call - poor man version) MS-SQLServer instead of SQLite. You can do the same user managment (i use normal SQL Security) and security like the full version. Except of the SQL-Agent nearly all is working for the poor man version. If your Application is growing, you can also step up you licence. Managment of the poor version is the same like for the full version. And under Linux i use cron and scripting for automartic backups and transfer them to a FTP Server. ---------------------------------------------------------------------- superc · 2022-03-23 19:55 Hello, from my experience Postgres is a good choice... It's free, it's powerful and have a powerful language, another good choice would be firebird. ---------------------------------------------------------------------- amir.eng · 2022-03-23 20:29 Thank you all for replying, I researched two databases : Postgres and Firebird I think both of them are the database that I'm looking for, but I have some questions : - I have download Firebird and it does not have a database management or GUI tool like SQLServer Management, or I was wrong ?? - Is it possible to create embeded or single database with Postgres like SQLite? - Do clients need to install anything to connect the database for both of  Postgres and Firebird? (I mean installing Firebird or Postgres on clients) , in this case which one is easier ? ---------------------------------------------------------------------- howardpc · 2022-03-23 20:55 Quote from: amir.eng on March 23, 2022, 09:29:28 pm- I have download Firebird and it does not have a database management or GUI tool like SQLServer Management, or I was wrong ?? For Firebird there is the cross-platform Flamerobin, see http://flamerobin.org/ ---------------------------------------------------------------------- sstvmaster · 2022-03-23 20:59 Quote from: amir.eng on March 23, 2022, 09:29:28 pm... - I have download Firebird and it does not have a database management or GUI tool like SQLServer Management, or I was wrong ?? ... There free GUI tools: https://firebirdsql.org/en/third-party-tools/ ---------------------------------------------------------------------- abouchez · 2022-03-23 21:45 Just add a network layer on top of your SQLite3 DB. mORMot can do this for free on FPC. Either to publish the DB over HTTP and run SQL: https://synopse.info/files/html/Synopse%20mORMot%20Framework%20SAD%201 .18.html#TITL_131 and https://github.com/synopse/mORMot2/blob/master/src/db/mormot.db.proxy. pas Or even better use interface based services. The mORMot SQLite3 engine has optional encryption with AES-NI (very fast and secure). ---------------------------------------------------------------------- Zvoni · 2022-03-24 07:36 Quote from: amir.eng on March 23, 2022, 09:29:28 pm- I have download Firebird and it does not have a database management or GUI tool like SQLServer Management, or I was wrong ??DBeaver https://dbeaver.io/ Quote- Is it possible to create embeded or single database with Postgres like SQLite?Firebird has an Embedded version Quote- Do clients need to install anything to connect the database for both of  Postgres and Firebird? (I mean installing Firebird or Postgres on clients) , in this case which one is easier ? At least the client-lib and/or the Driver ---------------------------------------------------------------------- superc · 2022-03-24 07:49 ZVoni, You beat me on time  ; Postgres have PgAdmin for connect and admin DB. ---------------------------------------------------------------------- Zvoni · 2022-03-24 08:27 Quote from: superc on March 24, 2022, 08:49:30 amZVoni, You beat me on time  ; Postgres have PgAdmin for connect and admin DB. Yes, but be careful to NOT get the phpPGAdmin. I fell for that one, and wondered why my dev-machine wanted to install Apache ---------------------------------------------------------------------- amir.eng · 2022-03-24 09:30 Thank you all for introducing FireBird and Postgre database, these are great databases, DBeaver is the best to management all the databases. Is it possible to encrypt database in FireBird or Postgre? ---------------------------------------------------------------------- marsupilami79 · 2022-03-24 10:20 Quote from: amir.eng on March 24, 2022, 10:30:25 amIs it possible to encrypt database in FireBird or Postgre? I do know that Firebird has added Interfaces for implementing database encryption. But they don't deliver one with their server. IBSurgeon and IBPhoenix sell modules that can be used. I tend to encrypt the whole server or at least the database partition if I need database encryption. ---------------------------------------------------------------------- MarkMLl · 2022-03-24 13:11 Quote from: amir.eng on March 24, 2022, 10:30:25 amIs it possible to encrypt database in FireBird or Postgre? It's called PostgreSQL, often abbreviated to Postgres, and a trivial Google search directs ones attention to https://www.postgresql.org/docs/14/encryption-options.html MarkMLl ---------------------------------------------------------------------- amir.eng · 2022-03-26 07:57 Thank you all for supporting, PostgreSQL will be my choice. ---------------------------------------------------------------------- MarkMLl · 2022-03-26 09:25 Quote from: amir.eng on March 26, 2022, 08:57:24 amThank you all for supporting, PostgreSQL will be my choice. I believe it's a good choice. The one thing that I'd add is that in my experience Firebird offers a moderate amount of compatibility, in particular both have notification mechanisms which allow the database server to tell the client(s) that something's changed: this is an extremely useful facility since even if running single-user it allows you to separate programs which enter and manipulate data and programs which rely on it in the background. MarkMLl