Centos 7.0에서 mariadb 실행시 아래 메세지가 나오면서 실행이 안된다.
[root@localhost bin]#systemctl restart mariadb
Job for mariadb.service failed. See ‘systemctl status mariadb.service‘ and ‘journalctl -xn’ for details.
여기서 중요한 건 systemctl status mariadb.service 이 메세지 이다.
아래와 같이 위에 명령어를 입력 하면 아래처럼 현재 mariadb상태가 나온다.
[root@localhost bin]# systemctl status mariadb.service
mariadb.service – MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled)
Active: failed (Result: exit-code) since 화 2015-04-14 09:20:51 KST; 12s ago
Process: 13078 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=1/FAILURE)
Process: 13077 ExecStart=/usr/bin/mysqld_safe –basedir=/usr (code=exited, status=0/SUCCESS)
Process: 13050 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS)
Main PID: 13077 (code=exited, status=0/SUCCESS)
4월 14 09:20:50 localhost.localdomain systemd[1]: Starting MariaDB database server…
4월 14 09:20:50 localhost.localdomain mysqld_safe[13077]: 150414 09:20:50 mysqld_safe Logging to ‘/var/log/mariadb/mariadb.log’.
4월 14 09:20:50 localhost.localdomain mysqld_safe[13077]: 150414 09:20:50 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
4월 14 09:20:51 localhost.localdomain mysqld_safe[13077]: 150414 09:20:51 mysqld_safe mysqld from pid file /var/run/mariadb/mariadb.pid ended
4월 14 09:20:51 localhost.localdomain systemd[1]: mariadb.service: control process exited, code=exited status=1
4월 14 09:20:51 localhost.localdomain systemd[1]: Failed to start MariaDB database server.
4월 14 09:20:51 localhost.localdomain systemd[1]: Unit mariadb.service entered failed state.
[해결 방법]
mysql data 디렉토리에 가보면 아래의 파일 3개가 있다.
-rw-rw—- 1 mysql mysql 5242880 4월 14 09:22 ib_logfile0
-rw-rw—- 1 mysql mysql 5242880 4월 14 09:22 ib_logfile1
-rw-rw—- 1 mysql mysql 18874368 4월 14 09:22 ibdata1
이 3개의 파일을 삭제 한다.
그리고 systemctl start mariadb.service 입력하면 정상적으로 실행이 된 것을 확인 할 수 있다.