Licensing FAQ
In this article we will explain how the MariaDB and MySQL server and client library licenses affect other applications and what steps you can take to comply with the GPL or avoid having to change your applications to GPL.
여기에서는 MariaDB 와 MySQL 서버, 그리고 클라이언트 라이브러리의 라이센스가 다른 어플리케이션에 어떤 영향을 끼치는지와 GPL 을 준수하면서 또는 어플리케이션을 변경하지 않고 GPL 을 준수하는 단계에 대해서 설명하고자 한다.
In the following text we talk about MariaDB. The guidelines also apply to MySQL in general, at least up to 5.1.55 which was the latest stable release at the time of writing.
여기부터는 MariaDB에 대해 이야기하게 될 것이다. 이 가이드라인은 일반적으로 MySQL에도 적용된다. 단, 이 글을 쓰여진 시점의 최신의 안정 버전인 5.1.55 버전에 대해서 그렇다.
Contents
Licenses used by MariaDB
MariaDB 가 사용한 라이센스 정책
MariaDB is distributed under the GPL license, version 2.
MariaDB는 GPL license, 버전 2 하에서 배포된다.
The MariaDB client libraries for C, Java and ODBC are distributed under the LGPL license, version 2.1 or later. The LGPL license allows you to distribute these MariaDB client libraries freely with any application.
The MariaDB client libraries 클라이언트 라이브러리 for C, Java and ODBC 는 LGPL 라이센스, 버전 2.1 또는 그 이후로 배포된다. LGPL 라이센스는 여러분이 이 MariaDB 클라이언트 라이브러리를 이용하여 어떤 어플리케이션에서도 자유롭게 사용할 수 있도록 해준다. are distributed under the LGPL license, version 2.1 or later. The LGPL license allows you to distribute these MariaDB client libraries freely with any application.
The MariaDB client library included with the MariaDB server is also GPL version 2, but has a FLOSS exception that allows you to combine it with most other open source software, without conflicting with their license, even if that license is incompatible with the GPL. We do however recommend you to use the new client libraries for any non-GPL application.
MariaDB 서버에 포함된 MariaDB 클라이언트 라이브러리는 GPL 버전 2 로 배포된다. 하지만, FLOSS exception 는 라이센스가 GPL과 호환되지 않는 경우라 하더라도 라이센스 충돌 없이 대부분의 다른 오픈 소스 소프트웨어와 결합할 수 있도록 도와준다. 그러나, 우리는 여러분이 GPL 라이센스 정책을 준수하지 않는 어플리케이션을 개발할 경우는 새로운 클라이언트 라이브러리 를 사용할 것을 적극 권장한다. client library included with the MariaDB server is also GPL version 2, but has a FLOSS exception that allows you to combine it with most other open source software, without conflicting with their license, even if that license is incompatible with the GPL. We do however recommend you to use the new client libraries for any non-GPL application.
Internal usage is free 내부적 사용은 무료
The GPL license only affects code that you distribute to other parties. GPL 라이센스는 다른 사람들에게 배포하는 코드에만 영향을 미친다.
Internal usage within an organization is totally free and not subject to any conditions. There is no such thing as 'internal distribution' that would restrict the usage of your code by requiring it to be GPLed.
조직 내에서 내부적 사용은 완전히 자유로우며 어떠한 조건에도 구애받지 않는다. GPL을 준수하기 위해 코드 사용에 제한을 두는 '내부 배포'는 없다.
Connecting to a remote service that runs MariaDB (or any other GPL software) in the background is also free.
백그라운드에서 실행되는 MariaDB (또는 다른 어떤 GPL 소프트웨어) 로의 연결 또한 자유롭다.
For internal programs for which you own all the copyright(s), there is essentially no risk in using GPL software. The argument you can use in your defense is that if the software became GPL as part of the distribution, you as the copyright holder could immediately revert your part back to its original copyright. No one has the right to require you to reveal or redistribute your code to the outside of your organization even if you would have distributed it internally linked with GPL software!
당신이 저작권을 보유하는 내부 프로그램들에 대해서 GPL 소프트웨어를 사용함으로써 생기는 본질적인 위험은 없다. 논리적 방어를 위해 사용할 수 있는 논리는 GPL 배포의 한 부분은 . 아무도 당신에게 조직 밖으로 코드를 공개하거나 재배포를 요구할 수는 없다. 내부적으로 GPL 소프트웨어 연결되었다 하더라도.
If your lawyers are concerned about distributions of software linked with GPL libraries between different legal entities within your organization, you can solve this by distributing your components and the GPL software separately, and have your other entity combining them. You can also switch to use the new LGPL client libraries.
만약 당신의 변호사가 GPL 라이브러리와 연결된 소프트웨어의 배포에 대해 염려한다면 당신 조직 내에 있는 다른 법률 자문 조직에 대해서도, 당신은 소프트웨어 구성 부분과 GPL 소프트웨어를 별도로 배포할 수 있다. 또한 새로운 LGPL 클라이언트 라이브러리들로 저환할 수 있다.
Distributing an application with a MariaDB connector/client
MariaDB 커넥터/클라이언트와 어플리케이션 배포
This section is for those that want to distribute the MariaDB client library code, but not the server, with their applications.
이 섹션은 자신의 어플리케이션과 함께 MariaDB 클라이언트 라이브러리 코드를 배포하고자 하는 사람들을 위한 것이다. (MariaDB 서버가 아니라)
Free software/open source applications
프리 소프트웨어 (free software)/오픈 소스 어플리케이션
If your application is Free software/open source and uses one of the licenses listed in the FLOSS exception, the GPL in the client library does not affect your application.
당신의 어플리케이션이 프리 소프트웨어/오픈 소스라면 FLOSS exception 에 나열된 라이센스들 중 하나를 사용하면 된다, 클라이언트 라이브러리의 GPL 라이센스는 당신의 어플리케이션에는 적용되지 않는다.
In other cases we recommend you to use the new LGPL client libraries.
다른 경우에는 새로운 LGPL클라이언트 라이브러리를 사용할 것을 권장한다.
Using a connector that is not GPL
GPL 이 아닌 커넥터의 사용
If you are using a connector that is not GPL, you are only bound by the license of that connector. Some examples are:
만약 GPL 이 아닌 커넥터를 사용할 경우, 커넥터의 라이센스에 묶이게 된다. 예를 들어,
The above have licenses that allow you to use them freely, without you being bound by the GPL.
위 라이브러리들은 GPL 라이센스에 묶이지 않고 자유롭게 사용할 수 있다.
Using a database source independent framework
프레임워크 독립적인 데이터베이스 소스 사용
If you are using a framework that allows you to connect dynamically to different RDBMS systems, any GPL licensed module loaded by the framework will not affect the application. Such frameworks are
- ODBC (Open Database Connectivity)
- JDBC (Java Database connectivity)
- Perl
- PHP PDO MySQL driver
서로 다른 RDBMS 시스템에 동적으로 연결하는 프레임워크를 사용하면, 프레임워크에 의해 로드된 GPL 라이센스된 모듈은 어플리케이션에 아무런 영향을 미치지 않는다. 이런 프레임워크에는 다음과 같은 것들이 있다.
- ODBC (Open Database Connectivity)
- JDBC (Java Database connectivity)
- Perl
- PHP PDO MySQL driver
The reason the GPL in the MySQL client library would not affect your application in this case is that the GPL client is supporting a standard interface and is thus merely an optional component among many. Your application could just as easily use the framework to connect to a RDBMS other than MariaDB or MySQL.
MySQL 클라이언트 라이브러리의 GPL은 여러분의 어플리케이션에 어떠한 영향을 미치지 않는 이유는 GPL 클라이언트가 표준 인터페이스를 지원하기 때문이며 다른 선택적 컴포넌트가 거의 없기 때문이다. 여러분의 어플리케이션이 MariaDB 또는 MySQL 외에 다른 RDBMS 와 연결하는 프레임워크를 사용하도록 만드는 것은 매우 쉬운 일이다.
Any software can be connected to the GPL v2 licensed MySQL Connector/ODBC, without the need for that software to be GPLed. This is because there is a piece of general management software, the ODBC manager, between the GPLed MySQL Connector/ODBC and your software. If any logic would require the software which interfaces with MySQL Connector/ODBC to be GPL, then that would apply also to the ODBC manager itself. Yet, the ODBC manager is not GPL, neither on Windows nor on Linux. By consequence, no one would be allowed to use MySQL ODBC driver for anything.
어떤 소프트웨어든 GPL 버전2 MySQL Connector/ODBC 와 연결할 수 있으며, 이 경우 이 소프트웨어가 반드시 GPL 일 필요는 없다. 이는 GPL인 MySQL Connector/ODBC 와 당신의 소프트웨어 사이에 일반적인 관리 소프트웨어의 일종인 ODBC 관리자가 놓여있기 때문이다. 만약 MySQL Connector/ODBC 와 인터페이스되는 어떤 로직이 반드시 GPL이어야 한다면, ODBC 관리자에게도 마찬가지로 적용된다. 그러나, ODBC 관리자는 GPL 라이센스가 아니며, 윈도나 리눅스의 소유도 아니다. 결과적으로 누구도 MySQL ODBC 드라이버를 사용할 수 없을 것이다.
Using the MariaDB client library for C
C언어용 MariaDB 클라이언트 라이브러리 사용
If your application is using a license that is not covered by the FLOSS exception, then you should use the new LGPL client libraries or C.
만약 FLOSS exception 라이센스에 적용되지 않는 라이센스를 사용한다면, 반드시 LGPL client libraries or C를 사용해야 한다.
The LGPL license allows you to distribute these MariaDB client library freely with any application. If you modify the client library, you need to publish the new source code.
LGPL 라이센스는 어떤 어플리케이션이라도 자유롭게 MariaDB 클라이언트 라이브러리를 함께 배포할 수 있게 해준다. 만약 클라이언트 라이브러리를 변경한다면, 반드시 새로운 소스 코드를 공개 배포해야 한다.
Distributing a proprietary application with the MariaDB / MySQL server
MariaDB / MySQL server 와 함께 독점적 어플리케이션의 배포
When you are distributing your application together with MariaDB or MySQL you are bound (or can be seen to be bound by some lawyers) by the GPL if some of the following statements apply:
어플리케이션을 MariaDB 또는 MySQL과 함께 배포할 때는 GPL에 묶이게 되며 (어떤 관점에서는 당신이 변호사에 의해 묶이게 되는 것일수도 있다), 다음과 같이 조항들이 적용된다.:
- You are using GPL code from MySQL linked directly to your application. (Like the MySQL GPL client library).
- Your application requires the MariaDB server to work and without the MariaDB server it doesn't start or it has very limited functionality.
- MySQL 과 직접적으로 연결할 경우 (MySQL GPL 클라이언트 라이브러리와 같이) GPL 코드를 사용중이다
- 어플리케이션이 작동하기 위해서는 반드시 MariaDB 서버를 필요로 하며, MariaDB 없이 시작되지 않거나 매우 제한적인 기능만 제공할 경우
The problem with the client library can be avoided by using one of the solutions mentioned earlier.
클라이언트 라이브러리의 문제를 피할 수 있는 해결 방법은 예전에 언급했던 내용을 살펴보기 바란다.
If your application works with many databases, either natively or by using one of the database source independent frameworks, then you can freely distribute the MariaDB server with your application without being affected by the GPL. The reason for this is that MariaDB would only be an optional, independent component in your software distribution and section 2 of the GPL explicitely allows this:
당신의 어플리케이션이 많은 데이터베이스와 함께 작동한다면 (직접 또는 데이터베이스 소스 독립적 프레임워크 중 하나를 이용하여), GPL의 영향을 받지 않고 MariaDB와 함께 자유롭게 어플리케이션을 배포할 수 있다. 이는 MariaDB가 당신의 소프트웨어 배포본에 선택적이고 독립적인 컴포넌트이기 때문이며, GPL 섹션 2 에서 명시적으로 이를 허용하고 있다.
"In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License."
"아울러, 특정 프로그램과 (또는 프로그램에 기반한 작업물과) 함께 이 프로그램에 기반하지 않은 다른 작업물의 동일한 스토리지 또는 배포 매체 형태의 단순한 통합의 경우에는, 이 라이센스의 범위에 속하지 않는다."
You also have the option to buy licenses for MySQL from Oracle to get MySQL under other copyright terms. If you would like to later be able to use MariaDB instead of MySQL, please ensure that your license agreement allows you to make changes to the MySQL code! (This is something that you should ensure in all cases as otherwise you may run into bugs that Oracle will not fix, you are not allowed to fix and could make MySQL software unusable for you!)
다른 저작권을 확보하기 위해 Oracle 로부터 MySQL 라이센스를 구매하는 옵션을 생각해 볼 수 있다. 만약 나중에 MySQL 대신 MariaDB 를 사용하고자 한다면, 당신의 라이센스 규약이 MySQL 코드의 변경을 허용하는지 반드시 확인해야 한다. (이는 수정하지 않는 버그들이 포함된 Oracle 제품을 사용하는 모든 경우에도 해당한다. 일반적으로 사용을 방해하는 MySQL 버그를 수정할 수 없다)
The rights to use the MariaDB code changes in your application can be requested from SkySQL.
어플리케이션 내에서 MariaDB 코드 변경에 대한 사용권은 SkySQL에 문의할 수 있다.
Legal notice
법적 공지
The text above is written by Michael "Monty" Widenius, who is not a lawyer and you should not regard any statements of the above as 'ultimate truth' in all scenarios. On the other hand, it was David and Monty who together decided to make MySQL GPL and also decided and openly declared the intentions behind this license change, so there is some merit to information in this article.
위 텍스트는 Michael "Monty" Widenius 에 의해 작성되었으며 그는 변호사가 아니다. 그러므로, 모든 경우에 있어 위의 모든 내용들이 반드시 적용된다고 보장할 수 없다. 아울러, MySQL을 GPL로 만들고자 결정했던 David 과 Monty 는 라이센스 변경의 의도를 공개적으로 선언했으며, 이 문서가 도움이 될 수 있다.
If you want a second opinion of how GPL works in this case, you can contact Software Freedom Law Center or Free Software Foundation about this. Neither part has had anything to do with this KB article but they are the default authorities to turn to when you want to know more about the GPL or LGPL.
만약 GPL 이 작동하는 방식에 대한 다른 의견이 있다면 Software Freedom Law Center 또는 Free Software Foundation 로 연락하기 바란다. 그들은 이 문서와 아무런 관련이 없지만 GPL 또는 LGPL를 알고자 할 때 가장 먼저 접촉해야하는 전문가들이다.