Database

windows 2003 MySQL 서비스 프로그램 등록 1067 에러

페이지 정보

본문

http://blog.naver.com/arumdaunz/6506765

윈도우즈 2003 엔터프라이즈 서버를 운영중에...

재설치를 마음먹고 포맷후 다시 설치하였다..

모든게 완벽했고..잘돌아갔다..

php를 5.0으로 깔려다 실패하고..4.0으로 다시 잡았다.

mysql도 4.3쓰다가 이번에 5.0으로 다시 깔았다.

그런데 mysql에 문제가 발생했다..4.3에서 먹힌 쿼리가 안들어 가는것..

그래서 홈피는 일대 대 사고가 발생했다.

이상하게도 5.0에서는

datetime 타입의 필드에 like '2004-10-11 %'가 안되는것이다..결과가 안다온다.

물론 2004-10-11대신에 변수값 $today를 사용하였다.

그래서 mysql 5.0을 프로그램 추가/삭제로 지우고 다시 4.0을 깔았다..

 

이렇게 몇시간을 사용후 재부팅 했는데..세상에 홈피에 디비접속에러가 난것이다.

이런 쪽으로 눈치가 빠른 나는 mysql이 실행이 안됬구나 직감하고 프로세스를 확인했다.

역시나 실행이 안됬고..서비스 항목에서 시작을 눌러도 에러만 발생했다.

이유는 mysqld-nt와 mysqld를 종료안하고 프로그램을 삭제한것이 문제인것 같다.

어쩐지 mysql/bin/의 무슨 dll과 mysqld-nt 실행파일 하나가 삭제되지 못한제 보호되고 있었는데.

그것이 프로세스가 실행중이어서 그런것을 미처 생각하지 못한것이다.

처음에는 멋모르고 재설치를 반복했다..가장 무식한짓..그 보호되고 있던 파일의 경로를 바꾼것..

탐색기에서 삭제해도 안되길래..새로 설치를 위해 mysql 폴더명을 del_mysql로 바껐다..

경고를 무시한체...말이지...그렇게 재설치를 몇번해도 마찬가지 였다...

관리도구-서비스에서 아무리 시작을 해도 1067에러만 발생하는 것이다..

다시 5.0으로 원상복구 시켜도 안됬고..프로그램 삭제후...레지스트리 값을 다 지워도 안됬고..

의외로 값을 가진것이 없었다. 다시 4.3을 설치해도 안되고..인터넷을 돌아다녔다.

 

결국 인터넷에서는 my.ini 파일이 c:\windows 안에 있어야 한다는 말...검색해 보니

administrator의 홈디렉토리 아래의 windows 디렉토리에 my.ini파일이 있는것이다..

이것을 다시 저장할려고 했으나 방도가 없어 c:\windows로 카피했다..그래도 안됬다..

mysqld-nt --remove나 mysqld-nt --install이나 mysqld --remove는 물론..mysqld --install까지..

모든 명령어로 서비스 항목을 지우고 써봐도 역시 1067 에러 메시지뿐이었다..

그러던중..NT에서 서비스 항목에 추가하는 방법을 적은 사이트를 발견

 

http://dev.mysql.com/doc/mysql/en/NT_start.html

 

영어를 잘 몰라 대충보니 그냥 --install과 --remove에 대한 말들 같았다..

지금껏 어디서도 말하지 않았던...

 

C:\> C:\mysql\bin\mysqld --install mysql --defaults-file=C:\my-opts.cnf

 

요런 옵션을 보았다...어찌하겠는가..먼지는 몰라도 한번 따라해봤다..
그러고 서비스 항목에서 시작을 눌렀더니 역시나 에러가 발생..흠...그런데

에러 번호가 달랐다. 1053이 발생한것이다.

어찌되었건...다시 remove시켰다..mysqladmin을 썼는데 서비스 항목에서 지워지질 않길래

명령어로 했더니 지울수 없다는 에러가 발생했다..서비스를 다시 실행했더니..지워져 있었다.

그런데 갑자기 저 my-opts.cnf라는 파일에 의문이 생겼다..혹시..my.ini라는 환경파일을

말하는 것이 아닐가 하는 의문이 생겼다..그래서 옵션을

 

C:\> C:\mysql\bin\mysqld --install mysql --defaults-file=C:\windows\my.ini

 

로 주고 다시 해봤다..역시나 1053에러가 발생...다시 remove시켰다..

그리고 왜 했는지 모르지만 지금까지 수십번한 mysqld-nt --install을 실행했다.

그리고는 이제는 습관처럼 서비스에서 mysql 시작을 눌렀는데 되는 것이었다.

아 신기하다..인터넷 어느 사이트에서도 가르처준적이 없는 내용이다..

 

여러가지 에러가 있겠지만...

관리도구 - 서비스 - mysql 시작 버튼을 눌렀을때 1067 에러가 나는 것은 my.ini 파일을

못찾거나 설정이 잘못되어 있는경우, 이런 경우는 my.ini만 잘 돌봐주면 된다고 한다.

그러나 나처럼 제어판-프로그램추가/삭제를 이용하거나 이용하지 않거나 삭제를 하고

재설치를 하다가 문제각 생겨서 1067에러가 생기는 경우에는 아무리 --remove옵션과

--install 옵션을 가지고 해도 안된다는 것이다.

 

해결 방법은 이번의 내 경우처럼 1067에러는 복구하지 못하면 다른 에러를 발생시키면 된다.

어떤 원인에 의해 1067에러를 내고 이전 상태로 복구가 안된다면 다른 에러를 발생시켜 그

이전 에러의 원인을 제거하고 그 새로 발생된 에러를 가지고 있다가 그 새로운 에러를

고처서 복구 시키면 되는것이다.

 

내 이야기의 결론은...

윈도우즈에서 mysql을 설치하다가 관리도구-서비스에서 mysql을 시작하려는데

1067에러가 발생한다면 인터넷에 떠도는 다른 기초적인 문제를 찾아보고 문제를 해결해도 되는데

그런저런 방법 다해도 안된다면 마지막 선택으로 이번 내 경우처럼 다른 에러를 발생시켜보라는 것이다.

 

C:\> C:\mysql\bin\mysqld --install mysql --defaults-file=C:\windowos\my.ini

 

이런 명령어를 주면 1053이라는 에러가 발생한다. 그다음 mysqld-nt --install을 하면

아주 잘 실행된다.

관련자료

민희진님의 댓글

안녕하세요 ㅋㄷ

궁금한게 잇는데요

그제일 마지막줄에 찐한 빨간글을 명령어 주면 이라는 말을 하셧는데

명령어 준다니 그게 무슨말인가요  제가 컴터를 다룰줄 모르걸랑요 ㅇㅅㅇ ㅜㅜ
Today's proverb
원만한 가정은 상호간의 희생 없이는 절대 영위(營爲)되지 못한다. 이 희생은 그것을 실행하는 사람을 위대하게 하며 아름답게 한다. (앙드레 지드)