2008년 11월 19일 수요일

MySQL개요

MySQL은 오픈소스 RDBMS이다.  개발, 서포트, 배포는 기업(MySQL AB)이 관리한다.

MySQL에서는 복수의 데이터저장형식을 가지고 있어 목적(기능,용도)에 따라서 지정할 수 있다.
이러한 기능을 실현한 것이 Multi Storage Engine이다.

처리의 분산은 Multi Thread기법을 이용한다.  또 복수의 character set을 지원하고 있어서 문자코드자동변환기능도 갖춰져있다. 

여러개의 라이센스형태가 있는데 크게 나누면 상용라이센스와 오픈소스 소프트웨어 라이센스가 있다.  

MySQL이 인터넷 상에서 등장한 것은 1995년이다. 지금보다 시스템 리소스가 열악한 환경에서 개발되어서 그런지 심플하고 다루기 쉬운 구조를 지니고 있다.  

초기단계부터 사용해온 사용자중에는 이런 부분에 매력을 느낀 사람도 많다고 들었다. 

최근의 MySQL은 기능 추가확장의 경향이지만 심플한 특징은 지금도 살아있는 느낌이다. 

특히 웹 어플리케이션에서는 LAMP(Linux, Apache, MySQL, PHP/Perl/Python) 조합으로 구축되어지는 경우도(Drupal, Xoops, Mediawiki등등) 많기때문에 MySQL을 사용하는 사람들도 꽤 있으리라 본다. 

SQL사용방법이나 문법해설은 MySQL 매뉴얼에 잘 써 있으므로 이 블로그에는 기능, 구조 부터 구축, 운용면에서 필요한 정보를 적어보려 한다. 

[정보입수처]
MySQL 정보를 입수하려면, MySQL AB사이트가 가장 확실하다. 

http://www.mysql.com

소스코드와 바이너리의 다운로드도 가능하다. 
MySQL은 버전이 바뀌면 이전하고 다른 동작을 하거나 다른 로직이 되어있는 경우가 많다.

그렇기 때문에 옛날 버전의 매뉴얼을 참조하고 있으면 실제로 적용되지 않는 부분도 있게 된다. 

[라이센스]
기본적으로 라이센스에는 상용(유료)하고 GNU General Public Licence version2(GPL v2)가 있다고 생각하면 간단하지만 판매방식에 따라서 이름과 내용등이 바뀌는 경우도 있다. 

상용라이센스와 최근 수년간 몇번인가 바뀌었다. 

판매제품의 부품용도라면 사용라이센스를 선택해야지 싶다.  이런 경우에는 MySQL AB나 파트너기업에서 라이센스를 구입하게 된다. 

상용이용이라고 해도 GPL v2라도 괜찮다면  소스코드나 바이너리를 다운로드해서 그냥 사용해도 무방하다.  특별한 신청은 필요없다. 
GPL v2에 적용되는 것들은 항상 소스코드하고 바이너리를 제공한다. 
GPL v2조항에 따라서 이용, 배포, 변경이 가능하다. 

현재 비상용의 경우  서버, 클라이언트, 클라이언트 라이브러리도 GPL v2다.

자세한 내용은 아래의 URL을 참조.

http://dev.mysql.com/doc/refman/5.1/en/gpl-license.html