sobre sirve servidor que programacion programa precio para licencia descripcion mysql licensing gpl

sirve - servidor mysql



Licencia de MySQL y GPL (10)

Por lo que sé, cuando construya una aplicación de escritorio / servidor con cualquier código GPL como MySQL, tendré que liberar el código fuente de mi software bajo la GPL.

Si quiero desarrollar una aplicación web utilizando MySQL, mi código se vinculará con las bibliotecas de MySQL. ¿Debo liberar el código fuente de mi aplicación web en esta situación para estar de acuerdo con la GPL?


Si quiero desarrollar una aplicación web utilizando MySQL, mi código se vinculará con las bibliotecas de MySQL. ¿Debo liberar el código fuente de mi aplicación web en esta situación para estar de acuerdo con la GPL?

  1. Como han dicho otros, si no está distribuyendo la aplicación a otros, no hay ningún problema.

  2. Normalmente, se desarrollaría contra una API de base de datos estándar y permitiría al usuario decidir qué base de datos se conectará a la aplicación. En este caso no hay problema. "Su código" no se vincularía con libmysqlclient, pero podría potencialmente combinarse con un módulo de acceso a la base de datos que se vincule con libmysqlclient.

  3. Si desea distribuir un instalador que configure su aplicación y libmysqlclient juntos, probablemente no cuente como "mera agregación", por lo que le exigiría que distribuya su aplicación bajo una licencia de código abierto. Sin embargo, esto no necesariamente tiene que ser GPL: consulte la Excepción de licencia de MySQL FOSS .

  4. Si desea distribuir un instalador que configure su aplicación y el propio servidor MySQL, la Excepción no se aplica, por lo que está limitado a GPL solamente.

Naturalmente, IANAL, y ciertamente existe cierta incertidumbre acerca de lo que cuenta como derivación, especialmente con respecto a la vinculación dinámica. Sin embargo, lo anterior es mi comprensión de la posición tradicional de MySQL AB en materia de licencias, y no he oído hablar de ningún cambio posterior a la toma del sol.


A menos que derive y / o distribuya el software GPL, debe estar seguro.

La vinculación con la biblioteca cliente de MySQL no es un trabajo derivado, ni una distribución.

ACTUALIZACIÓN: Pensándolo bien, la forma en que se vincula (dinámica o estática) con las bibliotecas marcará la diferencia. La vinculación estática es la distribución, pero si la vincula dinámicamente y sus clientes descargan los conectores ellos mismos, eso no es distribución y debería estar seguro.

Oh, y IANAL.


Debe liberar la fuente (bajo GPL), o pagar una licencia propietaria a MySQL para que obtenga el derecho de distribuir los binarios de MySQL bajo una licencia que sea más susceptible a la que usan los productos patentados. Sin embargo, es mejor llevar este tipo de preguntas a su abogado.

ETA : Solo para aclarar un poco; Si escribe su propia biblioteca que habla con MySQL usando su protocolo de línea de conexión, entonces siempre estará 100% a salvo. Del mismo modo, si usa una biblioteca que ha hecho precisamente eso, pero tiene licencia BSD (como ejemplo), entonces también estará claro, porque solo está hablando con MySQL a través de una conexión de socket y no está llamando. en el código GPL''d. No tengo conocimiento inmediato de ninguna interfaz BSD con licencia para el protocolo MySQL, pero ciertamente es posible que haya alguna en algún lugar.


Desafortunadamente, no es un corte tan limpio: la GPL prohíbe la distribución sin dar la fuente de cada "producto derivado". La distribución se define legalmente como el acto de transferir la fuente de una computadora a una o más computadoras para uso oficial.

Desafortunadamente, eso también puede incluir el uso en clústeres de servidores, cajas de control de calidad, cajas de desarrollo, etc. En la tienda de desarrollo moderna, solo liberar el código a múltiples cajas de frontend / backend es técnicamente distribución (a los ojos de la ley).

No importa lo que piense la Free Software Foundation, sí importa lo que unos pocos jueces piensan una vez que se demanda a una corporación por hacer exactamente eso.

Esa es solo una razón más por la que los clientes principales de la GPL en estos días son corporaciones que desean evitar que los competidores ingresen su código . Todos los demás deberían considerar licencias mucho menos engorrosas como el MIT o las licencias Creative Commons Attribution.


MySQL usa licencias duales. Como dicen, si eres libre, nosotros somos libres.

Por lo tanto, si usa, por lo que sé, solo el conector JDBC de MySQL, debe tener licencia o código GPL.


No necesariamente tiene que vincularse con las bibliotecas de MySQL para poder usar MySQL en su aplicación. Todo lo que tienes que hacer es "hablar" a un servidor MySQL usando el protocolo MySQL; en cuyo caso, se está conectando al servidor MySQL como cliente, es decir, como usuario, y luego no necesita lanzar su software bajo la licencia GNU GPL.

La pregunta es, ¿cómo puede su programa hablar el protocolo MySQL? Una posibilidad es usar la biblioteca de cliente MySQL oficial (conector), que es GPL''d. Si hace esto, está vinculando estáticamente su programa a una biblioteca de GPL y, por lo tanto, necesita liberar su software bajo la GPL.

Alternativamente, puede vincularse con una biblioteca cliente de terceros, con una licencia diferente. Por ejemplo, puede usar la Biblioteca de clientes MariaDB , que es LGPL''d (y por lo tanto es compatible con el software propietario) y proporciona la misma API de la biblioteca del cliente MySQL original. Consulte las preguntas frecuentes sobre la licencia de MariaDB , que también se aplican a MySQL, para obtener más detalles y consejos.

Puede ser difícil distribuir el servidor MySQL junto con su software: simplemente podría pedir a sus clientes que descarguen e instalen MySQL por su cuenta, o que desarrollen un descargador simple para distribuirlo con su software.


Primero, no soy abogado. Habla con uno antes de tomar cualquier consejo aquí.

Más allá de eso, si no distribuye su aplicación web, es probable que no necesite publicar sus cambios. Aún puede hacer que su aplicación web esté disponible para que la usen otros usuarios si la aloja.


Si está ejecutando la aplicación web usted mismo y no la está distribuyendo como una aplicación, entonces no tiene que liberar la fuente. Permitir el acceso a una aplicación web no se considera distribución.

Edición: si está interesado, puede consultar la Licencia Pública General de Affero , que requiere que la fuente esté disponible para los usuarios de la red del software AGPL (por ejemplo, se aplicaría a las aplicaciones web).


Si su distribución incluye e instala MySQL en el mismo paquete, se requiere una licencia comercial.

Pero si solo distribuye su código, con un simple aviso de "requiere MySql" y un script de instalación (para crear / completar las tablas), no debería haber ningún problema, AFAIK.

IANAL, por supuesto.


Siempre que lo mantenga solo para el servidor (y, por lo tanto, "privado"), no tiene que liberarlo como GPL. Pero tan pronto como llega a los escritorios públicos, ya no se puede considerar una compilación interna y, por lo tanto, se necesita el código fuente.

Así que puedes:

  • Libera tu código como GPL
  • Compra la versión comercial de MySQL.
  • Manténgalo solo en el servidor.