2012-11-18 28 views
5

Tôi đang phát triển chương trình ngay bây giờ, bằng PHP và tôi đã đọc GPL. Tôi đã đọc ở đâu đó rằng nếu chương trình của tôi thậm chí kết nối từ xa với phiên bản miễn phí của cơ sở dữ liệu MySQL từ Oracle, toàn bộ ứng dụng PHP của tôi phải hoàn toàn xác nhận GPL.Đề xuất MYSQL và GPL?

Nếu tôi không muốn ứng dụng của mình được cấp phép theo GPL, tôi có phải là lựa chọn duy nhất của tôi để mua giấy phép thương mại từ SUN không?

bất cứ ai có thể giúp tôi với thông tin để hỗ trợ nhu cầu của tôi như sau:

  • tôi muốn phân phối ứng dụng này trên mạng dưới một cái gì đó bên cạnh GPL, có thể như vậy khi sử dụng một phiên bản phi thương mại của MySQL Oracle ?

  • Tôi phải kết nối với nó và giữ dữ liệu bên trong cơ sở dữ liệu, ví dụ như sử dụng CMS như WordPress, Joomla hoặc Drupal.

Ví dụ, nếu tôi chỉ có mã này:

<?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); 
?> 

có nó phải được trên GPL hoặc GPL phù hợp? Nếu có, tôi có xuất bản các nguồn không? Và nếu có, nó được phép mã hóa nó với Zend hoặc Ioncube? Nó thậm chí có mã hóa hợp pháp như vậy (chỉ khi nó áp dụng theo mã GPL) với bất kỳ công cụ mã hóa nào không?

+3

Xem thêm http://stackoverflow.com/questions/620696/mysql-licensing-and-gpl –

+0

Nếu bạn không muốn mạo hiểm, bạn cũng có thể xem xét một DBMS * thực * miễn phí như PostgreSQL (và như một phần thưởng thêm - ngoài việc không phải sợ thư từ luật sư - bạn thậm chí còn nhận được nhiều tính năng SQL nâng cao hơn). –

+0

Thanks.I sẽ suy nghĩ về Postgre.Now chỉ tập trung vào câu hỏi này, điều quan trọng là tôi phải biết chính xác những gì tôi đã viết - GPL + MYSQL, không có DBMS nào khác vào lúc này, xin hãy tránh xa các dbms khác để hiểu rõ về cấu hình cụ thể này. cảm ơn. – user1654591

Trả lời

6

Có. Và không.

Ngay cả khi chương trình của bạn, ngay cả khi chạm vào cơ sở dữ liệu MYSQL từ xa, nó vẫn phải theo GPL. Trừ khi bạn phân phối nó với thư viện mysql thương mại mà bạn đã mua trước đây.

GPL nói rằng nếu chương trình bạn đang sử dụng thư viện GPL, nó phải được GPL:

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

Nếu một thư viện được phát hành theo giấy phép GPL (không phải là LGPL), điều đó có nghĩa rằng bất kỳ phần mềm nào sử dụng phần mềm phải thuộc giấy phép GPL hoặc giấy phép tương thích GPL? (#IfLibraryIsGPL) Có, vì phần mềm thực sự chạy bao gồm thư viện.

Nhìn vào cụm từ "sử dụng". Chỉ sử dụng nó là đủ để thực hiện yêu cầu này.

Ngoài ra nhìn vào giấy phép SUN: http://www.mysql.com/about/legal/licensing/oem/

Q3: Là một thương mại OEM, ISV hoặc VAR, khi tôi cần mua một giấy phép thương mại cho phần mềm MySQL?

A: OEM, ISV và VAR mà muốn những lợi ích của việc nhúng mã nhị phân thương mại của phần mềm MySQL trong các ứng dụng thương mại của họ, nhưng không muốn chịu sự GPL và không muốn phát hành mã nguồn của họ các ứng dụng độc quyền nên mua một giấy phép thương mại từ Oracle. Mua giấy phép thương mại có nghĩa là GPL không áp dụng và giấy phép thương mại bao gồm các bảo đảm mà nhà phân phối thường tìm thấy trong thỏa thuận phân phối thương mại.

Q4: Mô hình giấy phép kép của Oracle cho phần mềm MySQL là gì?

Oracle làm cho máy chủ cơ sở dữ liệu MySQL và Thư viện máy khách MySQL có sẵn theo cả GPL và giấy phép thương mại. Kết quả là, các nhà phát triển sử dụng hoặc phân phối các ứng dụng nguồn mở theo GPL có thể sử dụng phần mềm MySQL được cấp phép GPL và các OEM, ISV và VAR không muốn kết hợp hoặc phân phối phần mềm MySQL bằng phần mềm thương mại của riêng họ theo giấy phép GPL có thể mua giấy phép thương mại.

Điều gì sẽ là điểm của mệnh đề này theo cách khác?

Và nó không phải là về điểm lưu trữ web có thể có một số giấy phép, không có, lưu trữ web không phân phối môi trường lưu trữ web của họ sử dụng mysql để nó không áp dụng.

Ngoài ra ai biết nơi tôi muốn cài đặt chương trình, trên máy chủ cục bộ hoặc trên web được chia sẻ?

Nếu bạn không muốn có nó dưới GPL, bạn phải mua giấy phép thương mại từ SUN/Oracle mysql và phân phối chương trình của bạn với những thư viện riêng biệt đó.

Và ở đây nó đi PHP. Nếu bạn phát triển chương trình trong PHP thì câu trả lời là:

NO

nó đã không phải là GPL. Tại sao? Bởi vì PHP là trong danh sách FOSS http://www.mysql.com/about/legal/licensing/foss-exception/

Vì vậy, có 2 câu trả lời cho câu hỏi của bạn:

1.YES - nếu nó trực tiếp chạm vào mysql 2.No nếu nó được sử dụng PHP như lớp để làm điều đó.

Vì vậy, đối với bạn, trong trường hợp PHP cụ thể này, KHÔNG, phần mềm php của bạn không phải là GPL.

Các vấn đề liên quan