Licenza MySql - Zambros
Mercoledì 19 Agosto 2009 12:04 - Ultimo aggiornamento Martedì 03 Maggio 2011 12:51
Alcuni dei nostri progetti utilizzano il database MySql e una delle domande che ci vengono fatte
piu' di frequente é "MySQL si paga per uso commerciale?".
La risposta non è delle piu' semplici.
Nel nostro caso, essendo degli esperti nel settore, riusciamo a evitare il costo della licenza.
Tutto dipende dal tipo di librerie di interfacciamento che si utilizza. MySQL mette a disposizione
due modi per interfacciarsi al database: una propria API scritta in linguaggio C ed un socket in
ascolto che riceve comandi tramite una normale connessione TCP/IP.
Un'applicazione che usa l'include di (per esempio) mysql.h si devono rilasciarne i sorgenti. La
licenza GPL con il quale è stato rilasciato MySQL (ed anche le sue librerie client) dice
chiaramente che quando si "linka" codice GPL ad altro codice, il risultato deve essere per forza
rilasciato sotto licenza GPL.
La licenza GPL però non impone vincoli di utilizzo dell'applicazione stessa. Utilizzare quindi una
libreria client che al posto delle API, usa il socket TCP/IP, ci permette di utilizzare MySQL
anche da un'applicazione closed-source, senza bisogno di ottenere una licenza commerciale.
E' esattamente quello che fa la libreria di interfacciamento di Python oppure di PHP. Esse
utilizzano il metodo di connessione al socket, senza fare l'include del codice di MySQL.
Per un maggiore approfondimento:
Link
in particolare questo paragrafo
1/2
Licenza MySql - Zambros
Mercoledì 19 Agosto 2009 12:04 - Ultimo aggiornamento Martedì 03 Maggio 2011 12:51
Riassumendo:
Praticamente, se ci colleghiamo con mysql attraverso un socket tcp-ip non c'è da pagare la
licenza.
Questo è vero per il fatto che non viene usata una libreria propria di mysql per la connessione,
ma qualcosa di esterno.
Se in più, oltre a questo, l'applicazione commerciale sviluppata non comprende esplicitamente
mysql per l'installazione, e mysql non è obbligatorio per il funzionamento dell'applicazione,
allora a maggior ragione non c'è da pagare la licenza.
::ZetaGest::
Nel caso nostro, ci connettiamo a mysql con le librerie di php, e zetagest funziona benissimo
anche senza mysql (infatti la classe che gestisce le connessioni potrebbe connettersi anche ad
altri database, come PostgreSQL, SQL Server), e non lo include nell'installazione (mysql, come
apache del resto) viene installato a parte.
Siamo dei semplici utilizzatori di mysql.
2/2