Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MYSQL and GPL recommendation? [closed]

I am developing program now, in PHP, and I read the GPL. I have read elsewhere that if my program even remotely connects to the free edition of MySQL database from Oracle, my whole PHP application has to fully endorse the GPL.

If I don't want my application to be licensed under the GPL, is my only option to buy a commercial license from SUN ?

Can anyone assist me with information to support my needs as follows:

  • I want to distribute this application over the net under something besides GPL, is this possible while using a non commercial edition of Oracle's MySQL?

  • I must connect to it and keep data inside database, as for example using a CMS like WordPress, Joomla or Drupal.

For example, if I have only this code:

<?php
$con = mysql_connect("localhost","root","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

mysql_query("INSERT INTO X (A, B, C)
VALUES ('A', 'B','C')");


mysql_close($con);
?>

have it to be on GPL or GPL compliant ? If yes, have I publish also sources ? And if yes it is allowed to encrypt it with Zend or Ioncube ? Is it even legal encrypting such (only if its apply under GPL) code with any encryption tool ?

like image 256
user1654591 Avatar asked Nov 18 '12 16:11

user1654591


1 Answers

Yes. And NO.

Even if your program, even remotely touches MYSQL database, it has to be under GPL. Unless you distribute it with commercial mysql libraries which you have bought previously.

GPL says that if your program is using GPL library, it has to be GPL:

http://www.gnu.org/licenses/gpl-faq.en.html#IfLibraryIsGPL

If a library is released under the GPL (not the LGPL), does that mean that any software which uses it has to be under the GPL or a GPL-compatible license? (#IfLibraryIsGPL) Yes, because the software as it is actually run includes the library.

Look at the phrase "uses it". Only using it is enough to accomplish this requirements.

Additionally look at SUN licensing: http://www.mysql.com/about/legal/licensing/oem/

Q3: As a commercial OEM, ISV or VAR, when should I purchase a commercial license for MySQL software?

A: OEMs, ISVs and VARs that want the benefits of embedding commercial binaries of MySQL software in their commercial applications but do not want to be subject to the GPL and do not want to release the source code for their proprietary applications should purchase a commercial license from Oracle. Purchasing a commercial license means that the GPL does not apply, and a commercial license includes the assurances that distributors typically find in commercial distribution agreements.

Q4:What is Oracle's dual license model for MySQL software?

Oracle makes its MySQL database server and MySQL Client Libraries available under both the GPL and a commercial license. As a result, developers who use or distribute open source applications under the GPL can use the GPL-licensed MySQL software, and OEMs, ISVs and VARs that do not want to combine or distribute the MySQL software with their own commercial software under a GPL license can purchase a commercial license.

What would be the point of this clause in other way ?

And it is not about the point that web hosting can have some licenses, no, web hosting does not distribute theirs web hosting environments which uses mysql so it does not apply.

Also who knows where I want to install program, on localhost or on shared web ?

If you dont want to have it under GPL you have to buy commercial license from SUN/Oracle mysql and distribute your program with those separate libraries.

And here it goes PHP. If you develop program in PHP then answer is:

NO

it has not to be GPL. Why ? Because PHP is on FOSS list http://www.mysql.com/about/legal/licensing/foss-exception/

So there are 2 answers to your question:

1.YES - if it directly touches mysql 2.No if it is using PHP as layer to do it.

So for you, in this particular PHP case, it is NO, your php software does not have to be GPL.

like image 151
user1834888 Avatar answered Sep 24 '22 00:09

user1834888