2008-11-11 10 views
7

मैं एक प्रोजेक्ट पर काम कर रहा हूं और यह निर्धारित करने की कोशिश कर रहा हूं कि कौन सा मंच उपयोग करना है। अभी, मेरी पहली पसंद एक MySQL डेटाबेस के साथ ASP.Net MVC का उपयोग करना होगा। इसके साथ मेरी चिंता यह है कि MySQL ड्राइवरों के पास एक जीपीएल लाइसेंस है। मैं इसे एक कंपनी के लिए बना रहा हूं और इसलिए यह ओपन-सोर्स प्रोजेक्ट नहीं हो सकता है। यहां मेरे प्रश्न हैं:.NET से MySQL का उपयोग करना - लाइसेंसिंग चिंता

  1. यदि मैं माइस्क्ल ड्राइवर का उपयोग करता हूं जिसमें जीपीएल लाइसेंस है, तो क्या मुझे पूरा एप्लिकेशन ओपन-सोर्स बनाना है?
  2. क्या किसी को किसी भी अन्य MySQL ड्राइवरों के बारे में पता है जिनके पास कम प्रतिबंधक लाइसेंस है?
  3. पोस्टग्रेएसक्ल में एक एलजीपीएल लाइसेंस है जो मुझे विश्वास है कि ठीक होना चाहिए, लेकिन मुझे एएसपी.Net और PostgreSql वाली कोई होस्टिंग साइट नहीं मिल रही है। किसी को भी किसी भी सस्ते होस्टिंग योजनाओं ($ 10- $ 20/mo अधिमानतः) के बारे में पता है जो दोनों की पेशकश करते हैं?

उत्तर

7

MySQL पुस्तकालयों का उपयोग करके आपका कोड आधार जीपीएल होगा।

यदि आप एकाधिक ग्राहकों के लिए कोड लिख रहे हैं, तो आप उन ग्राहकों को सिस्टम सिस्टम को स्रोत कोड जारी करने के लिए बाध्य होंगे। जीपीएल के तहत बड़े पैमाने पर स्रोत कोड खोलने के लिए आपके पास कोई दायित्व नहीं है, आप बस किसी और को ऐसा करने से नहीं रोक सकते हैं।

मुझे दोहराने दो, क्योंकि लोग इस बिंदु के बारे में वास्तव में अस्पष्ट हो जाते हैं।जीपीएल आपको उन इकाइयों को केवल स्रोत कोड जारी करने के लिए सॉफ़्टवेयर वितरित करने वाली इकाई के रूप में बाध्य करता है, जिसे आपने वास्तव में सॉफ़्टवेयर की बाइनरी जारी की है। यदि आपके साथ मेरा रिश्ता है, और मुझे आपके सॉफ़्टवेयर की एक प्रति प्राप्त होती है (और आदर्श रूप में मैंने इसके लिए आपको मुआवजा दिया है), और फिर फ्रैंक सॉफ़्टवेयर के लिए पूछताछ करता है, तो आपके पास देने (या बेचने या कुछ भी करने का कोई दायित्व नहीं है) फ्रैंक के लिए सॉफ्टवेयर। यह कुछ "बैग से बाहर बिल्ली" चीज नहीं है।

फ्रैंक मेरे पास आ सकता है, और मैं उसे दे सकता हूं (बेच सकता हूं, व्यापार कर सकता हूं), और आप मुझे ऐसा करने से नहीं रोक सकते हैं, लेकिन आपके पास सॉफ्टवेयर वितरित करने और फ्रैंक का समर्थन करने की कोई प्रतिबद्धता नहीं है। चूंकि मैं टायर व्यवसाय में अच्छी तरह से हो सकता हूं, सॉफ्टवेयर वितरित करना वास्तव में मेरा बैग नहीं है, इसलिए यह संभावना नहीं है कि मैं कुछ सार्वजनिक संग्रह पर कोड पोस्ट कर दूंगा।

यदि परियोजना एक ग्राहक के लिए है, तो वे किसी भी तरह से स्रोत कोड के हकदार हो सकते हैं, इसलिए इस मामले में जीपीएल शायद एक गैर-मुद्दा है।

जब तक आपके पास कोड का कॉपीराइट है, तो आप हमेशा भविष्य की रिलीज के लिए लाइसेंस बदल सकते हैं। इसलिए, यदि आप बाद में MySQL का उपयोग नहीं करना चुनते हैं, तो आप अगली रिलीज "अन-जीपीएल" कर सकते हैं और कुछ अन्य लाइसेंस का उपयोग कर सकते हैं, हालांकि आप किसी भी रिलीज किए गए सॉफ़्टवेयर को "अन-जीपीएल" नहीं कर सकते हैं।

कस्टम, लंबवत सॉफ़्टवेयर के लिए, जीपीएल वास्तव में एक गैर-मुद्दा है क्योंकि अधिकांश कंपनियां केवल सॉफ्टवेयर वितरण व्यवसाय में नहीं हैं, और एक विक्रेता के रूप में आप वास्तव में किसी को भी समर्थन देने के लिए बाध्य नहीं हैं बल्कि आपके वास्तविक ग्राहकों की बजाय किसी ने भी सोर्स कोड दिया होगा। प्राथमिक चिंता व्यापार रहस्यों आदि पर है

मास मार्केट सॉफ्टवेयर निश्चित रूप से एक अलग मुद्दा है।

+0

हालांकि एक सुधार हालांकि: स्वतंत्र रूप से उपलब्ध (जीपीएल) का उपयोग करना MySQL ड्राइवर आपके कोड बेस को जीपीएल करेगा। वाणिज्यिक लोगों का उपयोग नहीं करेंगे। यदि आप सॉफ़्टवेयर वितरित करते हैं तो मुझे मैकेनिक्स के बारे में निश्चित नहीं है और ग्राहक को डेटाबेस ड्राइवर प्रदान करने के लिए कहा जाता है, जो मूल रूप से कोई विक्रेता और कोई लाइसेंस हो सकता है –

+0

जीपीएल की यह व्याख्या गलत है। जीपीएल ड्राइवर का उपयोग जीपीएल आपके कोड-बेस नहीं है। इस तर्क से, अपाचे में वेब एप्लिकेशन होस्ट करना या लिनक्स पर अपना एप्लिकेशन चलाने से आपको जीपीएल भी मिल जाएगा। जीपीएल बस लोगों को MySQL ड्राइवरों को लेने, उन्हें सुधारने और फिर सुधार उपलब्ध कराने से रोकता है। – krohrbaugh

+2

आप गलत हैं। अपाचे जीपीएल बिल्कुल नहीं है, इसलिए लागू नहीं होता है। लिनक्स एलजीपीएल सी पुस्तकालयों पर निर्भर करता है, और यह भी लागू नहीं होता है। अपने कोड बेस में जीपीएल कोड में लिंक करना व्युत्पन्न कार्य बनाता है, और पूरी चीज जीपीएल बनाता है। अन्यथा हमें एलजीपीएल की तरह कुछ की आवश्यकता नहीं होगी। –

2

मैं वकील नहीं हूं, लेकिन पहले MySQL डेटाबेस डेटाबेस है। तो आपको अपने प्रोजेक्ट ओपनसोर्स को रिलीज़ करने की आवश्यकता नहीं है क्योंकि आप उस पर डेटा डालते हैं।

यदि आप अपनी ज़रूरत को पूरा करने के लिए ड्राइवर को अपडेट करना चाहते हैं, तो आपको उस संशोधन को जीपीएल लाइसेंस के तहत रखना होगा।

1

आप एक वाणिज्यिक उत्पाद के लिए MySQL जीपीएल क्लाइंट लाइब्रेरी का उपयोग नहीं कर सकते हैं, इसका उपयोग केवल ओपन सोर्स प्रोजेक्ट्स के लिए किया जा सकता है। MySQL एक उचित लाइसेंस के लिए एक वाणिज्यिक लाइसेंस के तहत एक ही ग्राहक लाइब्रेरी प्रदान करता है जिसका उपयोग आप अपने उद्देश्यों के लिए कर सकते हैं, आप वाणिज्यिक लाइसेंस here के बारे में अधिक जानकारी प्राप्त कर सकते हैं।

3

क्या तकनीकी/राजनीतिक कारण हैं जिन्हें आपको MySQL या PostgreSQL का उपयोग करने की आवश्यकता है? कारण मैं पूछता हूं कि आपके लक्षित मूल्य सीमा में एएसपी.NET होस्ट हैं जो SQL सर्वर डेटाबेस पहुंच प्रदान करते हैं। Server Intellect में $ 15/mo योजना है जिसमें 250 एमबी एसक्यूएल डेटाबेस स्पेस शामिल है (नोट: जब मैं एक सर्वर प्रदाता के रूप में सर्वर इंटेलक्स्ट का उपयोग करता हूं, तो मेरे पास उनके साथ कोई अन्य संबंध नहीं है और आप का उपयोग करने का चयन करने से कोई लाभ नहीं मिलता है)।

मैं MySQL .NET Connector पृष्ठ पर GPL (2.0) link के माध्यम से पढ़ सकते हैं और यह मेरे लिए पूरी तरह से स्पष्ट क्या प्रभाव यह जब यह का उपयोग कर के रूप में है एक वेब अनुप्रयोग में (असंशोधित) होता नहीं है। सेक्शन 2 केवल तभी लागू होता है जब आप ड्राइवर को संशोधित कर रहे हों ... सेक्शन 3 कहता है कि आप द्विआधारी के रूप में ("वितरित या प्रकाशित") का उपयोग कर सकते हैं, बशर्ते आप इसे (और स्रोत) भी उपलब्ध कराएं।

यदि आपको MySQL मार्ग पर जाना है, तो आप एक जीपीएल विशेषज्ञ/वकील से परामर्श करना बुद्धिमान होगा।

0

@ जेफ-डोननिकि: मैंने निश्चित रूप से SQL सर्वर का उपयोग करके इनकार नहीं किया है। MySQL की तरफ झुकाव करने के 2 कारण यह है कि 1) यदि यह किसी साझा होस्टिंग प्रदाता के लिए कभी भी बड़ा हो जाता है, तो यह एक बहुत सस्ता विकल्प होगा और 2) मुझे कई डेटाबेस बनाने और मैं जो कुछ भी करने में सक्षम होना चाहिए साझा होस्टिंग प्रदाताओं के बारे में देखा है, SQL सर्वर 1 या 2 डेटाबेस तक सीमित है जबकि वे कुछ MySQL डेटाबेस को अनुमति देते हैं।

2

जो मैं समझता हूं उससे, यदि आप जीपीएल पुस्तकालयों को बदलते, संशोधित या परिवर्तित नहीं करते हैं, और आप केवल उनके उपयोग के लिए उनका उपयोग कर रहे हैं, तो आपका शेष कोड बेस जीपीएल के तहत नहीं आ जाएगा। अब यदि आप एप्लिकेशन वितरित करते हैं, तो आपको पुस्तकालयों के लिए लाइसेंस तक पहुंच प्रदान करना होगा और आपके द्वारा उपयोग की जाने वाली पुस्तकालयों के स्रोत तक पहुंच प्रदान करनी होगी। लेकिन बाकी सब कुछ तुम्हारा है और लाइसेंस के रूप में आप चाहते हैं।

संबंधित मुद्दे