간만에 APM 설치 공부 좀 해 보려고 예전에 작성해 두었던 메뉴얼을 그대로 따라해 보았는데 이게 웬 걸? 계속 같은 곳에서 에러가 나는 것이다. VMWare로 설치 전으로 되돌아가기를 몇 번을 반복하며 재설치를 해 보았건만 계속 실패다.
열심히 구글링을 해 보았다. 하지만 뾰족한 방법은 찾을 수 없었다.
근데 너무나도 우연하게 그냥 쉽게 해결해 버렸다.
일단 여태 겪었던 문제를 공개하자면 아래 현상이다.
[root@localhost mysql-4.1.18]# /usr/local/mysql/bin/mysql_install_db
Installing all prepared tables
ERROR: 1062 Duplicate entry 'localhost-root' for key 1
ERROR: 1062 Duplicate entry 'localhost-' for key 1
Fill help tables
To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h localhost password 'new-password'
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; perl run-all-tests
Please report any problems with the /usr/local/mysql/bin/mysqlbug script!
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com
[root@localhost mysql-4.1.18]#
mysql_install_db 명령이 빨간색으로 표시한 부분처럼 에러 문구를 내며 안 먹히는 것이었다.
그런데 해결법은 너무 간단했음.
서버에 설정된 시간이 실제 시간과 맞지 않을 경우 이런 에러가 생기는 것이었다.
위 명령어 한 방에 그냥 해결되어 버렸다.
내 경우는 VMWare로 리눅스를 가상OS로 설치해서 공부를 주로 하는데 VMWare로 리눅스를 설치하는 경우 처음에 시간 관련 옵션을 건드리지 않을 경우 OS의 시간과 실제 시간이 맞지 않는 경우가 많다. 아니, 늘 그렇게 되어 있었다.
암튼 서버 시간을 실제 시간과 동기화시킨 뒤에는 mysql_install_db 명령어가 정상적으로 먹히는 것을 확인할 수 있었다.
예전엔 블로그에 정리해 두었던 메뉴얼로 APM을 설치하면 항상 잘 되었는데 요즘 다시 APM 설치를 연습하기 시작하면서 예전엔 없던 에러가 자꾸 발생해 문제의 원인을 곰곰히 되짚어 보다가 예전과 지금의 VMWare 환경 중 차이가 날 법한 요인으론 무엇이 있는지 생각한 끝에 우연히 알게 된 해결법이다.
그러나................
mysql_install_db 명령어를 주고 나면 /usr/local/mysql 디렉토리 하단에 data 디렉토리가 생성되어 있어야 하는데 위 과정까지 진행하고도 data 디렉토리가 생성되지 않는 경우가 있다.
이것의 원인은 리눅스를 처음 설치하고 난 뒤 아파치 및 mysql 관련 패키지들이 잔존하고 있기 때문이다.
리눅스를 설치할 때 서버로 돌릴 목적이라면 서버모드로 설치하게 되는데 내 경우는 웹서버, DB서버도 모두 체크 해제하고 설치했는데도 희한하게 설치가 안 되는 것이었다. 그런데 rpm 명령어로 패키지 검사를 하면 http, mysql 관련 패키지들이 일부 검색되어 나왔다. 이들이 APM 소스 설치를 자꾸 방해하는 찌끄레기 같은 놈들이었던 것이다.
그래서 이들를 없애주면 된다. 망할 것들...
APM 설치를 시작하기 전 먼저 아래 명령어로 깔끔 간단하게 지워주도록 하자.
그 다음부터는 APM 설치가 너무너무 잘 되었다. ^^
역시 리눅스는 삽질 없이는 무엇 하나 쉽게 건질 수 있는 게 없다. ㅋ
그리고 VMWare는 각종 패키지 소스 설치 시 더할 나위 없는 좋은 마루타이다.
소스 설치 한 번 잘못해서 꼬이기 시작하면 원래의 깨끗한 환경으로 되돌리기가 참 난감하다.
VMWare의 스냅샷 기능을 이용해서 얼마든지 이전 시점으로 쉽고 빠르게 되돌아가 다양한 경우의 수를 가정하며 이런 저런 설치 방법을 시도해 볼 수가 있다. ^^