[MYSQL] removed Directory(/var/run/mysqld) after server reboot
상황
리부팅 후 mysql프로세스가 구동되지 않음
리부팅 전 까지 정상적으로 운영해왔던 상태
- 수시로 프로세스 재시작을 해왔고
- 운영하면서 별다른 문제 및 에러메세지가 없었던
ERROR
2022-01-03 15:34:13 0 [ERROR] Can't start server : Bind on unix socket: No such file or directory 2022-01-03 15:34:13 0 [ERROR] Do you already have another server running on socket: /var/run/mysqld/mysqld.sock ? 2022-01-03 15:34:13 0 [ERROR] Aborting
mysql config
pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock
확인
# ls -al /var/run/mysql* ls: cannot access '/var/run/mysql*': No such file or directory
my.cnf 설정에 의해 “/var/run/mysqld” 디렉토리를 사용해야 하지만
디렉토리가 존재하지 않는 문제
디렉토리를 생성해주면 정상적으로 mysql이 구동되지만
리부팅시 “/var/run/mysqld”디렉토리는 삭제되고 없음
해결
- 리부팅시마다 생성을 해주거나 : 이 경우 귀찮음
mkdir /var/run/mysqld chown mysql.mysql /var/un/mysqld
- 설정을 통한 해결
조치를 위한 설정 검토
MySQL 공식 repository 를 이용하여 설치했을 경우 기본 설정 값
- mysql-5.7 : /lib/systemd/system/mysql.service
RuntimeDirectory=mysqld RuntimeDirectoryMode=755
- mysql-8.0 : /usr/lib/tmpfiles.d/mysql.conf
d /run/mysqld 0755 mysql mysql -
본 내용은 “기본 설정 값”일 뿐이며, 참고사항임…
(무조건 버전으로 저렇게 해야 함은 아님)