MySQL 라이센스에 대한 고찰
페이지 정보
본문
mysql의 라이센스는 GPL/Commercial 을 사용자가 선택할 수 있습니다. 그리고 GPL 버전을 사용하면 GPL의 의무를 지키기만 하면 됩니다. 그런데 GPL의 의무는 해당 소프트웨어를 타인에게 배포할 때 발생하는 것이고 해당 소프트웨어를 사용하여 서비스를 할 때에는 소프트웨어 자체가 타인에게 전달되는 것이 아니기 때문에 특별한 의무가 발생하지 않습니다.
포털 사이트의 경우 mysql이 포함된 제품을 판매(mysql을 구매자에게 배포)하는 것이 아니기 때문에 GPL 버전을 사용한다고 해서 문제가 될 것은 없습니다.
mysql의 GPL 버전에 실제로 영향을 받는 사람들은 개별 웹 에이전시나 프리랜서들입니다.
mysql 라이센스에 대한 2006년 8월 6일자 mysql 본사 정책은 http://www.mysql.com/company/legal/licensing/ 에 정리되어 있습니다. 이를 잘 해석해 보면 상용 라이센스를 구매하여야 할 경우는 자유 소프트웨어/오픈소스 소프트웨어가 아닌 소프트웨어들과 mysql을 함께 배포하는 경우 뿐입니다. 그 외에는 mysql의 gpl 버전을 그대로 사용하여도 무방하며 이 경우 gpl의 의무를 지키기만 하면 문제가 없습니다.
gpl의 의무는 제가 위에서 적은 것과 마찬가지로 소프트웨어를 배포하는 시점에 발생하는 것이므로 mysql gpl 버전을 다운받아서 다른 이에게 배포하지 않은 채로 사용한다면 사용에 별다른 의무사항이 존재하지 않습니다. 대표적인 경우가 인터넷 포털 사이트 등이 되겠지요.
그런데 위에서 개별 웹 에이전시나 프리랜서들이 영향을 받을 수 있다고 한 부분은 조금 더 자세하게 쓰면 다음과 같습니다. 요약하자면 소켓이나 파이프를 이용하는 DBI나 ODBC를 통해서 해당 소프트웨어가 mysql과 통신하는 경우에는 gpl 버전을 그대로 사용할 수 있습니다. 즉 가장 대표적으로 php가 이 경우에 속하며 mysql 서버 프로세스와 apache 웹 서버 프로세스의 php 모듈은 동일한 서버일 경우 유닉스 도메인 소켓으로, 서로 다른 서버일 경우 TCP/IP 소켓으로 통신하게 되어 이 php 모듈 위에서 돌아가는 php 애플리케이션(웹 에이전시나 프리랜서들이 작성한 것)은 자유 소프트웨어/오픈소스 소프트웨어가 아니어도 문제가 없습니다.
따라서 commercial 라이센스를 구매하여야 하는 경우는 mysql의 클라이언트 라이브러리와 직접적으로 링크되는 자유 소프트웨어/오픈소스 소프트웨어가 아닌 소프트웨어를 따로 작성하여 고객에게 넘겨주는 경우로 그 범위가 상당히 좁혀지고, libmysqlclient와 함께 링크가 되지 않는다면 gpl 버전을 다른 소프트웨어들과 함께 배포도 할 수 있습니다. 왜냐면 gpl 라이센스는 gpl 소프트웨어가 gpl이 아닌 다른 소프트웨어들과 함께 배포되는 것을 막고 있지는 않기 때문입니다.
다만 지금 mysql의 라이센스에 대해서 여러가지 혼란이 일어나고 있는 것은 위와 같이 mysql이 듀얼 라이센스로 배포되면서 gpl 버전에 대해 부여되는 권한/의무와 commercial 버전에 대해 부여되는 권한/의무에 대해 명확히 구별하지 않은 채 무조건 mysql을 가지고 상용 서비스를 하려면 commercial 라이센스를 구매하여야 한다는 식으로 인식되고 있기 때문입니다.
그러나 이는 어디까지나 저의 개인적인 해석입니다. 실제로 mysql의 저작권자인 MySQL AB가 mysql의 저작권을 어떤 식으로 고객들에게 enforce할 것인가는 MySQL AB의 고유 권한입니다. 의도하였든 의도하지 않았든 간에 http://www.mysql.com/company/legal/licensing/ 에도 가장 일반적인 경우가 될 개별 php 애플리케이션의 라이센스에 따른 gpl 버전/commercial 버전의 선택 기준에 대해서는 언급되어 있지 않기 때문에 최종적인 의견은 MySQL AB 본사에 문의하여 보는 것이 가장 좋습니다.
포털 사이트의 경우 mysql이 포함된 제품을 판매(mysql을 구매자에게 배포)하는 것이 아니기 때문에 GPL 버전을 사용한다고 해서 문제가 될 것은 없습니다.
mysql의 GPL 버전에 실제로 영향을 받는 사람들은 개별 웹 에이전시나 프리랜서들입니다.
mysql 라이센스에 대한 2006년 8월 6일자 mysql 본사 정책은 http://www.mysql.com/company/legal/licensing/ 에 정리되어 있습니다. 이를 잘 해석해 보면 상용 라이센스를 구매하여야 할 경우는 자유 소프트웨어/오픈소스 소프트웨어가 아닌 소프트웨어들과 mysql을 함께 배포하는 경우 뿐입니다. 그 외에는 mysql의 gpl 버전을 그대로 사용하여도 무방하며 이 경우 gpl의 의무를 지키기만 하면 문제가 없습니다.
gpl의 의무는 제가 위에서 적은 것과 마찬가지로 소프트웨어를 배포하는 시점에 발생하는 것이므로 mysql gpl 버전을 다운받아서 다른 이에게 배포하지 않은 채로 사용한다면 사용에 별다른 의무사항이 존재하지 않습니다. 대표적인 경우가 인터넷 포털 사이트 등이 되겠지요.
그런데 위에서 개별 웹 에이전시나 프리랜서들이 영향을 받을 수 있다고 한 부분은 조금 더 자세하게 쓰면 다음과 같습니다. 요약하자면 소켓이나 파이프를 이용하는 DBI나 ODBC를 통해서 해당 소프트웨어가 mysql과 통신하는 경우에는 gpl 버전을 그대로 사용할 수 있습니다. 즉 가장 대표적으로 php가 이 경우에 속하며 mysql 서버 프로세스와 apache 웹 서버 프로세스의 php 모듈은 동일한 서버일 경우 유닉스 도메인 소켓으로, 서로 다른 서버일 경우 TCP/IP 소켓으로 통신하게 되어 이 php 모듈 위에서 돌아가는 php 애플리케이션(웹 에이전시나 프리랜서들이 작성한 것)은 자유 소프트웨어/오픈소스 소프트웨어가 아니어도 문제가 없습니다.
따라서 commercial 라이센스를 구매하여야 하는 경우는 mysql의 클라이언트 라이브러리와 직접적으로 링크되는 자유 소프트웨어/오픈소스 소프트웨어가 아닌 소프트웨어를 따로 작성하여 고객에게 넘겨주는 경우로 그 범위가 상당히 좁혀지고, libmysqlclient와 함께 링크가 되지 않는다면 gpl 버전을 다른 소프트웨어들과 함께 배포도 할 수 있습니다. 왜냐면 gpl 라이센스는 gpl 소프트웨어가 gpl이 아닌 다른 소프트웨어들과 함께 배포되는 것을 막고 있지는 않기 때문입니다.
다만 지금 mysql의 라이센스에 대해서 여러가지 혼란이 일어나고 있는 것은 위와 같이 mysql이 듀얼 라이센스로 배포되면서 gpl 버전에 대해 부여되는 권한/의무와 commercial 버전에 대해 부여되는 권한/의무에 대해 명확히 구별하지 않은 채 무조건 mysql을 가지고 상용 서비스를 하려면 commercial 라이센스를 구매하여야 한다는 식으로 인식되고 있기 때문입니다.
그러나 이는 어디까지나 저의 개인적인 해석입니다. 실제로 mysql의 저작권자인 MySQL AB가 mysql의 저작권을 어떤 식으로 고객들에게 enforce할 것인가는 MySQL AB의 고유 권한입니다. 의도하였든 의도하지 않았든 간에 http://www.mysql.com/company/legal/licensing/ 에도 가장 일반적인 경우가 될 개별 php 애플리케이션의 라이센스에 따른 gpl 버전/commercial 버전의 선택 기준에 대해서는 언급되어 있지 않기 때문에 최종적인 의견은 MySQL AB 본사에 문의하여 보는 것이 가장 좋습니다.
댓글목록
등록된 댓글이 없습니다.