본문 바로가기

카테고리 없음

[오류 해결] The server quit without updating PID file

728x90
반응형

오류 문구

Starting MySQL
. ERROR! The server quit without updating PID file (/opt/homebrew/var/mysql/user-MacBookPro.local.pid).

상황

mysql.server start

서버를 시작하기 위해 위 명령어를 실행했을 때 발생

해결 과정

초기화

mysqld --initialize-insecure --user=사용자계정명

위 명령어를 통해 초기화를 시도하였으나 아래와 같은 오류가 발생했다.

2023-08-29T13:05:06.767305Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.
2023-08-29T13:05:06.778564Z 0 [System] [MY-013169] [Server] /opt/homebrew/Cellar/mysql/8.1.0/bin/mysqld (mysqld 8.1.0) initializing of server in progress as process 23901
2023-08-29T13:05:06.783114Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
2023-08-29T13:05:06.783116Z 0 [ERROR] [MY-013236] [Server] The designated data directory /opt/homebrew/var/mysql/ is unusable. You can remove all files that the server added to it.
2023-08-29T13:05:06.783144Z 0 [ERROR] [MY-010119] [Server] Aborting
2023-08-29T13:05:06.785024Z 0 [System] [MY-010910] [Server] /opt/homebrew/Cellar/mysql/8.1.0/bin/mysqld: Shutdown complete (mysqld 8.1.0)  Homebrew.
2023-08-29T13:05:06.785169Z 0 [System] [MY-015018] [Server] MySQL Server Initialization - end.

MySql 서버가 PID 23901로 초기화를 시작했으나, 데이터 디렉토리에 이미 존재하는 파일로 인해 초기화에 실패했다는 내용이다.

cd /opt/homebrew/var/mysql

초기화를 하기 위해서는 /opt/homebrew/var/mysql 경로 내의 기존의 파일을 삭제해야 한다고 하여 위 명령어를 이용하여 해당 경로로 들어갔더니 아래와 같은 파일/디렉토리를 확인할 수 있었다.

사용자계정명-MacBookPro.local.err	auto.cnf			ib_logfile0			multi-master.info		sys				undo002
aria_log.00000001		binlog.index			ibdata1				mysql				test				undo003
aria_log_control		ib_buffer_pool			mariadb_upgrade_info		performance_schema		undo001

해당 경로 내의 모든 파일을 삭제해야 하는데, 삭제 전 주의해야 할 내용은 다음과 같다.

1. 데이터 디렉터리 내의 파일은 아주 중요한 부분이기 때문에, 중요한 데이터 손실을 방지하기 위해서는 데이터베이스 백업이 필요하다.

2. 서버가 중지되어 있어야 한다.

3. 삭제하면 안되는 파일이 들어가 있는 것은 아닌지 확인 후에 삭제한다.

데이터 삭제

# 경로 이동
cd /opt/homebrew/var

# 폴더 삭제
rm -rf mysql

# 폴더 생성
mkdir mysql

위 순서대로 명령어를 실행하였으나, mysql.server start로 서버 실행 시 다음 오류가 발생했다.

. ERROR! The server quit without updating PID file (/opt/homebrew/var/mysql/Minji-MacBookPro.local.pid).

 

 

해결 방법

# mysql 삭제 (버전이 여러개 일 경우, 모두 삭제)
brew uninstall mysql

# 폴더 삭제
rm -rf /opt/homebrew/var/mysql

# mysql 설치
brew install mysql

위 방법대로 전체 삭제 후 재설치한 뒤 실행해보면 정상 실행이 된다.

안되는 경우, 폴더 삭제 시 경로를 확인해본다.

/opt/homebrew/Cellar/mysql/8.1.0/bin/mysqld
--initialize-insecure
--user=minji
--basedir=/opt/homebrew/Cellar/mysql/8.1.0
--datadir=/opt/homebrew/var/mysql
--tmpdir=/tmp

설치할 때 나오는 로그인데, 여기에서 datadir 경로를 삭제 경로로 지정해줘야 한다.

 

최초에 mysql을 설치하고 세팅하면서 계정 비밀번호를 설정한 뒤 잊어버려서 해결하기 힘들었다. 비밀번호를 재설정하는 방법으로 진행해보려 했으나 이것저것 시도해보면서 오히려 산으로 가는 느낌이라 그냥 삭제 후 재설치 하는 방법으로 해결했다.

728x90
반응형