Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
service mysql start를 실행시 아래와 같은 오류가 발생하면 해당 process를 찾아서 kill 시켜주고 다시 start시켜준다.
(service msyql stop을 해도 정상적으로 죽지 않은 경우 사용한다)
---------start명령-----------
root@gsda1:/home/gooper/www# service mysql start
Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.
--------------오류내용확인--------
root@gsda1:/home/gooper/www# systemctl status mariadb.service
● mariadb.service - MariaDB database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: failed (Result: exit-code) since Sun 2017-05-14 22:33:01 KST; 8s ago
Process: 1556 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Process: 1403 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _W
Process: 1399 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 1396 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Main PID: 1556 (code=exited, status=1/FAILURE)
Status: "MariaDB server is down"
May 14 22:32:59 gsda1 mysqld[1556]: 2017-05-14 22:32:59 139968140122368 [Note] Plugin 'FEEDBACK' is disabled.
May 14 22:32:59 gsda1 mysqld[1556]: 2017-05-14 22:32:59 139967177131776 [Note] InnoDB: Dumping buffer pool(s) not yet started
May 14 22:32:59 gsda1 mysqld[1556]: 2017-05-14 22:32:59 139968140122368 [Note] Server socket created on IP: '::'.
May 14 22:32:59 gsda1 mysqld[1556]: 2017-05-14 22:32:59 139968140122368 [ERROR] Can't start server: Bind on TCP/IP port. Got error: 98: Address already in use
May 14 22:32:59 sda1 mysqld[1556]: 2017-05-14 22:32:59 139968140122368 [ERROR] Do you already have another mysqld server running on port: 3306 ?
May 14 22:32:59 gsda1 mysqld[1556]: 2017-05-14 22:32:59 139968140122368 [ERROR] Aborting
May 14 22:33:01 gsda1 systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE
May 14 22:33:01 gsda1 systemd[1]: Failed to start MariaDB database server.
May 14 22:33:01 gsda1 systemd[1]: mariadb.service: Unit entered failed state.
May 14 22:33:01 gsda1 systemd[1]: mariadb.service: Failed with result 'exit-code'.
...skipping...
----------------------사용하는 포트를 찾아서 프로세스 죽이기-------
root@gsda1:/home/gooper/www# lsof -i TCP:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 26930 root 393u IPv4 3413337530 0t0 TCP gsda1:36154->gsda3:3306 (CLOSE_WAIT)
java 26930 root 394u IPv4 3413337496 0t0 TCP gsda1:36150->gsda3:3306 (CLOSE_WAIT)
java 26930 root 395u IPv4 3413337532 0t0 TCP gsda1:36156->gsda3:3306 (CLOSE_WAIT)
java 26930 root 396u IPv4 3413337499 0t0 TCP gsda1:36152->gsda3:3306 (CLOSE_WAIT)
java 26930 root 397u IPv4 1983484764 0t0 TCP *:3306 (LISTEN)
java 26930 root 398u IPv4 3414469640 0t0 TCP gsda1:3306->xxx.xxx.xxx.xxx:63061 (ESTABLISHED)
java 29944 root 393u IPv4 3413334674 0t0 TCP gsda1:35692->gsda3:3306 (CLOSE_WAIT)
java 29944 root 394u IPv4 3413334691 0t0 TCP gsda1:35714->gsda3:3306 (CLOSE_WAIT)
java 29944 root 395u IPv4 3413334709 0t0 TCP gsda1:35746->gsda3:3306 (CLOSE_WAIT)
java 29944 root 396u IPv4 3413334718 0t0 TCP gsda1:35764->gsda3:3306 (CLOSE_WAIT)