안녕하세요. 웹 개발자입니다.
mysql의 innodb활성화에 대해 문의할려고 합니다.
회사내의 db서버가 전원이 갑자기 내려가 재부팅 되었습니다.
문제는 mysql서버가 시작되었는데, 접속은 되지만, 클라이언트 툴로 확인해보면
Unknown table engine 'InnoDB' 메시지가 떠서 구글링을 해보니 innodb가 활성화가 안되있는것
같았습니다. 그래서
ib_logfile* 을 초기화 (rm -rf ib_logfile*) 후 서버를 재기동 했습니다.
Innodb 가 활성화 되었는지 확인했습니다.
mysql> show variables like 'have_innodb';
해보니 NO라고 나옵니다. 그래서 로그 파일을 확인했는데, 다음과 같이 보입니다.
InnoDB: Cannot initialize created log files because
InnoDB: data files are corrupt, or new data files were
InnoDB: created when the database was started previous
InnoDB: time but the database was not shut down
InnoDB: normally after that.
120117 12:44:18 [ERROR] Plugin 'InnoDB' init function returned error.
120117 12:44:18 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
120117 12:44:18 [Note] Event Scheduler: Loaded 0 events
120117 12:44:18 [Note] /usr/local/mysql/libexec/mysqld: ready for connections.
Version: '5.1.37-log' socket: '/tmp/mysql.sock' port: 3306 Source distribution
lb_logfile0과 lb_logfile1은 생성되어 있습니다.
이럴 경우 복구할 방법은 없나요? db 백업 파일은 있습니다.
|