CentOS6 의 EOL로 인해 기존에 사용하던 서버의 OS를 업그레이드 해야 했다.
기존에 사용하던 서버는 통합 테스트를 위해 사용한 단순한 가상 서버였고, Vagrant를 이용해서 서버를 띄웠기 때문에 CentOS7로 업그레이드 하는 것은 어렵지 않았다.
VagrantBox Cloud에서 사용할 CentOS7 image를 다운받고, 필요한 패키지들을 순서대로 설치했는데 MySQL을 설치하고 설정하는 부분에서 문제가 생겼다.
문제
기본적으로 MySQL을 실행하면 3306 포트를 사용한다.
그러나 기존에 사용하고 있던 서버는 다른 포트를 사용했기 때문에, 테스트에 사용했던 스크립트들과의 호환성을 위해 포트 번호를 맞춰줄 필요가 있었다.

이를 위해 /etc/my.cnf 파일을 수정하여 사용할 포트 번호를 지정해주었다.
설정한 포트번호로 MySQL 서버가 제대로 작동하는지 확인하기 위해 systemctl start mysqld를 실행했을 때, 내가 볼 수 있었던건 선채로 죽어있는 늠름한 터미널의 모습이었다.
당황하여 포트번호를 3306으로 다시 재설정하니, 멀쩡하게 작동하는 MySQL 서버를 볼 수 있었고.. 뭔가 설정해야 하는구나? 하는 촉이 왔다.
문제를 해결할 수 있었던 방법은 다음과 같다.
해결 방법
CentOS 에서는 MySQL 포트번호를 변경하고 서비스를 재시작하면 에러가 발생한다.
이 때,
/usr/sbin/setenforce 0
입력하고 서비스를 시작하면 정상 작동한다.
그러나 이 방법을 이용하면 매번 부팅할때마다 수동으로 저 명령어를 입력해주어야 하는데, 이걸 부팅할때 실행되도록 설정할 수 있다.
1. /etc/rc.d/rc.local 안에
/usr/sbin/setenforce 0 <- 내용 추가 후 저장
또는
2. /etc/selinux/config 안에
selinux=disabled
그리고 서버를 reboot하고 mysql을 실행해보면 오류 없이 작동하는 모습을 볼 수 있다.
출처
'개발' 카테고리의 다른 글
| [K8S] Node Affinity 간단하게 사용해보기 (2) | 2024.01.30 |
|---|---|
| [RabbitMQ] - 3. Spring boot로 Work Queue에 다수의 consumer를 등록하여 task 처리하기 (1) | 2024.01.14 |
| JPQL - Fetch join? with 테스트 코드 (0) | 2022.04.03 |
| [RabbitMQ] - 2. Spring boot로 RabbitMQ 사용하기(hello world!) (3) | 2021.11.30 |
| [RabbitMQ] - 1. Mac에서 RabbitMQ 설치하기 (3) | 2021.11.24 |