Использование MySql из .Net - Вопросы лицензирования - PullRequest
7 голосов
/ 11 ноября 2008

Я работаю над проектом и пытаюсь определить, какую платформу использовать. Прямо сейчас мой первый выбор - использовать ASP.Net MVC с базой данных MySql. Меня беспокоит то, что у драйверов MySql есть лицензия GPL. Я создаю это для компании, и поэтому это не может быть проект с открытым исходным кодом. Вот вопросы, которые у меня есть:

  1. Если я использую драйверы MySql, имеющие лицензию GPL, должен ли я сделать приложение полностью открытым?
  2. Кто-нибудь знает о каких-либо других драйверах MySql, имеющих менее ограничительную лицензию?
  3. PostgreSql имеет лицензию LGPL, которая, на мой взгляд, должна быть в порядке, но я не могу найти хостинговые сайты с ASP.Net и PostgreSql. Кто-нибудь знает о каких-либо дешевых тарифных планах хостинга (предпочтительно от 10 до 20 долларов в месяц), предлагающих оба варианта?

Ответы [ 6 ]

7 голосов
/ 11 ноября 2008

Использование библиотек MySQL приведет к тому, что ваша кодовая база будет GPL.

Если вы пишете код для нескольких клиентов, вы будете обязаны предоставить исходный код вашей системе ЭТИМ клиентам. В соответствии с GPL вы не обязаны открывать исходный код для широкой публики, вы просто не можете помешать кому-либо другому сделать это.

Позвольте мне повторить это, поскольку люди действительно не понимают этого вопроса. GPL обязывает вас как организацию, распространяющую программное обеспечение, выпускать исходный код только тем организациям, для которых вы фактически выпустили двоичный файл программного обеспечения. Если у вас есть отношения со мной, и я получаю копию вашего программного обеспечения (и в идеале я вас за это компенсировал), а затем появляется Фрэнк с просьбой предоставить вам программное обеспечение, вы НЕ ОБЯЗАНЫ давать (или продавать, или что-либо еще) программное обеспечение для Фрэнка. Это не какая-то вещь "Кошка из сумки".

Фрэнк может прийти ко мне, и я могу дать (продать, обменять) его ему, и вы не можете помешать мне сделать это, но у вас нет обязательств распространять программное обеспечение самостоятельно или поддерживать Фрэнка. Поскольку я вполне могу заниматься бизнесом в Тире, распространение программного обеспечения на самом деле не мое дело, поэтому маловероятно, что я буду публиковать код в каком-либо общедоступном архиве.

Если проект предназначен для одного клиента, он может в любом случае иметь право на исходный код, поэтому GPL в этом случае, вероятно, не является проблемой.

Пока у вас есть авторские права на код, вы всегда можете изменить лицензию для будущего выпуска. Поэтому, если вы решите больше не использовать MySQL позже, вы можете «отменить GPL» в следующем выпуске и использовать другую лицензию, однако вы не можете «отменить GPL» для любого выпущенного программного обеспечения.

Для нестандартного вертикального программного обеспечения GPL на самом деле не является проблемой, поскольку большинство компаний просто не занимаются распространением программного обеспечения, и как поставщик вы не обязаны фактически поддерживать кого-то, кроме ваших реальных клиентов, а не кого-либо они могли бы также дать исходный код. Основная проблема связана с коммерческой тайной и т. Д.

Программное обеспечение для массового рынка - это, конечно, другая проблема.

3 голосов
/ 11 ноября 2008

Есть ли технические / политические причины, по которым вам нужно использовать MySQL или PostgreSQL? Причина, по которой я спрашиваю, состоит в том, что в целевом ценовом диапазоне есть хосты ASP.NET, обеспечивающие доступ к базе данных SQL Server. Сервер Интеллект имеет план $ 15 / мес, который включает 250 МБ пространства базы данных SQL (примечание: хотя я использую Сервер-Интеллект в качестве хостинг-провайдера, у меня нет с ними никаких отношений и я не получаю никакой выгоды от вы решили использовать их).

Я прочитал ссылку GPL (2.0) на странице MySQL .NET Connector , и мне не совсем ясно, как это отразится на использовании как есть ( без изменений) в веб-приложении. Раздел 2, кажется, применим, только если вы модифицируете драйвер ... Раздел 3, кажется, говорит, что вы можете использовать («распространять или публиковать») двоичный файл как есть, при условии, что вы также сделаете его (и источник) доступным.

Если вы ДОЛЖНЫ пойти по маршруту MySQL, вам следует проконсультироваться с экспертом / адвокатом GPL.

2 голосов
/ 11 ноября 2008

Из того, что я понимаю, если вы не изменяете, не модифицируете и не изменяете библиотеки GPL и используете их только в том виде, в каком они есть, остальная часть вашей базы кода не подпадает под действие GPL. Теперь, если вы распространяете приложение, вам нужно будет предоставить доступ к лицензии для библиотек и доступ к источнику библиотек, которые вы использовали. Но все остальное ваше и лицензировать, как вы хотите.

2 голосов
/ 11 ноября 2008

Я не юрист, но сначала MySQL - это движок базы данных. Поэтому вам не нужно выпускать свой проект OpenSource, потому что вы помещаете в него данные.

Если бы вы обновили драйвер в соответствии с вашими потребностями, вам нужно было бы поместить это изменение под лицензию GPL.

1 голос
/ 11 ноября 2008

Нельзя использовать клиентскую библиотеку MySQL GPL для коммерческого продукта, ее можно использовать только для проектов с открытым исходным кодом. MySQL предлагает ту же клиентскую библиотеку под коммерческой лицензией за разумную плату, которую вы можете использовать для своих целей, вы можете узнать больше о коммерческой лицензии здесь .

0 голосов
/ 11 ноября 2008

@ Джефф-Донничи: Я определенно не исключаю использование SQL Server. 2 причины, по которым я склоняюсь к MySql, заключаются в том, что 1) если он когда-либо станет слишком большим для провайдера виртуального хостинга, это будет гораздо более дешевый вариант, и 2) мне нужно будет иметь возможность создавать несколько баз данных и из того, что я Мы видели поставщиков общего хостинга, SQL Server ограничен 1 или 2 базами данных, хотя они позволяют довольно много баз данных MySql.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...