Forum > Databases

MySQL or MariaDB

<< < (3/3)

af0815:

--- Quote from: calm_sea on June 28, 2022, 03:23:13 pm ---However my question was about the licenses, in particular about the client libraries to be distributed with the application

--- End quote ---
Is the client library in the distribution, have at minimum LGPL and you only link dynamical it is ok. With LGPL included the linking exception you can also link according the license static too.

But for absolutly safy, ask a lawyer who is knowing softwarerigths.

valdir.marcos:

--- Quote from: calm_sea on June 28, 2022, 08:14:30 am ---Hello! For a proprietary licensed project, is it better to use MySQL or MariaDB as a server? Does the problem arise only for client licenses? Are those of Lazarus LGPL? I had a doubt because I read in wikipedia that only MariaDB has an LGPL license (therefore for closed source projects)
--- End quote ---
If download size matters (because final installation size is always bigger):

Download PostgreSQL
Open source PostgreSQL packages and installers from EDB
PostgreSQL Version  14.4
Windows x86-64
File size: 298 MB
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
postgresql-14.4-1-windows-x64.exe


Release date: 2022-05-21
File name: mariadb-10.8.3-winx64.msi
File size: 65.3 MB
https://mariadb.org/download/?t=mariadb&p=mariadb&r=10.8.3&os=windows&cpu=x86_64&pkg=msi&m=fder


December 22, 2021
Win64  64-bit Kits
Windows executable installer, recommended for first-time users
Firebird-4.0.1.2692-0-x64.exe    25 MB    
https://firebirdsql.org/en/firebird-4-0-1/


Maybe you should also consider how much hungry for hardware resources each one of them is.



--- Quote from: calm_sea on June 28, 2022, 10:49:20 pm ---Thanks for your answer. I am not sure if the MariaDB client can be used. I think the link is dynamic because I need the dll file (or .so). From what you say it's ok, isn't it?
ps: what about firebird? it declares MPL modified
--- End quote ---
Firebird is really completely free for both commercial and open source projects.

Handoko:

--- Quote from: calm_sea on June 28, 2022, 10:49:20 pm ---... if the MariaDB client can be used. I think the link is dynamic because I need the dll file (or .so). From what you say it's ok, isn't it?

--- End quote ---

From what I understand on the LGPL linking is they want to make sure users can freely modify/improve and update the LGPL library used in the closed source program. This is the FAQ explaining the case of static linking of LGPL:


--- Quote ---(1) If you statically link against an LGPLed library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application.
--- End quote ---
https://www.gnu.org/licenses/gpl-faq.html#LGPLStaticVsDynamic

So I think static linking is allowed if the programmer provides a 'way' to let users to update the LGPL library used in the program. I haven't try but if your Lazarus-generated application uses the database client library and the program will still run if users replace/update that client library to a newer version.


--- Quote from: calm_sea on June 28, 2022, 10:49:20 pm ---ps: what about firebird? it declares MPL modified

--- End quote ---

Firebird is licensed in IPL and IDPL, both are variants of the Mozilla Public Licence V.1.1 (MPL).
https://firebirdsql.org/manual/qsg2-firebird-licenses.html
https://firebirdsql.org/en/licensing/

These are what I know about MPL:

MPL license is more permissive than GPL/LGPL, it allows static and dynamic linking to proprietary projects. You can choose whatever license you like on your final projects (the larger work), you are even allowed to modify the MPL code used in your closed source projects.

- MPL 2.0 is compatible with GPL, but MPL 1.1 is not compatible with GPL.
- You need to inform users your final project uses MPL library and where to get that MPL library.
- Any modification on the MPL code must make public, except in private use.

https://www.mozilla.org/en-US/MPL/1.1/FAQ/

Navigation

[0] Message Index

[*] Previous page

Go to full version