MySQL 프로그램을 실행할 때 다양한 방식으로 옵션을 지정할 수 있습니다. 상황과 목적에 따라 적합한 방법이 다르며, 각 방식마다 우선순위도 차이가 있습니다. 이 글에서는 MySQL 프로그램에 옵션을 지정하는 대표적인 세 가지 방법과 옵션이 처리되는 순서를 자세히 살펴보겠습니다.
1. 명령줄(Command Line)에서 지정하기
프로그램 이름 뒤에 옵션을 나열하여 지정하는 방법입니다. 특정 실행 시점에만 일시적으로 적용하고 싶은 옵션이 있을 때 가장 많이 사용되는 방식입니다.
2. 옵션 파일(Option File)에서 지정하기
MySQL 프로그램이 시작될 때 읽어 들이는 옵션 파일에 옵션을 작성해 두는 방법입니다. 프로그램이 실행될 때마다 항상 동일하게 적용되어야 하는 옵션을 설정할 때 유용합니다.
3. 환경 변수(Environment Variables)로 지정하기
환경 변수에 옵션 값을 설정해 두는 방법입니다. 역시 프로그램이 실행될 때마다 매번 같은 옵션을 적용해야 하는 경우에 활용할 수 있습니다.
실무에서의 활용
실제 운영 환경에서는 위 세 가지 방법 중 옵션 파일이 가장 널리 사용됩니다. 옵션 파일은 설정을 체계적으로 관리할 수 있을 뿐만 아니라, Unix 시스템에서 여러 개의 MySQL 인스턴스를 동시에 구동할 때도 활용됩니다.
옵션 처리 순서와 우선순위
MySQL은 옵션을 순서대로 처리합니다. 따라서 동일한 옵션이 여러 번 지정된 경우, 마지막에 지정된 값이 우선 적용됩니다.
예를 들어 아래 명령어를 실행하면 mysql 클라이언트는 example.com이 아니라 localhost에서 실행 중인 서버에 연결됩니다.
mysql -h example.com -h localhost
MySQL 프로그램은 먼저 환경 변수를 확인하고, 그다음 옵션 파일을 처리한 뒤, 마지막으로 명령줄 옵션을 검사합니다.
나중에 처리되는 옵션이 앞선 옵션보다 우선권을 가지기 때문에, 이러한 처리 순서는 곧 우선순위를 의미합니다. 즉, 환경 변수의 우선순위가 가장 낮고, 명령줄 옵션의 우선순위가 가장 높습니다.