작성
·
57
0
docker exec -it bash 해서 복사 해서 내 디렉터리까지 옮겨서 다 따라해봤는데 저는
kongmac@minuuimaegbug-ui-noteubug Dockerfile % docker logs cde3e64f71aa
2025-03-07T08:00:12.394150Z 0 [System] [MY-015015] [Server] MySQL Server - start.
2025-03-07T08:00:12.622065Z 0 [Warning] [MY-010143] [Server] Ignoring user change to 'root' because the user was set to 'mysql' earlier on the command line
2025-03-07T08:00:12.623333Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 9.1.0) starting as process 1
mysqld: File './binlog.index' not found (OS errno 13 - Permission denied)
2025-03-07T08:00:12.628763Z 0 [ERROR] [MY-010119] [Server] Aborting
2025-03-07T08:00:12.630606Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 9.1.0) MySQL Community Server - GPL.
2025-03-07T08:00:12.630620Z 0 [System] [MY-015016] [Server] MySQL Server - end.
이런 오류가 나오네요... 도커로 db포트 열었으면 어떻게 해야하나요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
kongminoo님이 직면하신 오류는 MySQL 서버가 binlog.index
파일에 접근할 수 없다는 권한 문제로 보입니다. 이를 해결하기 위해 몇 가지 방법을 시도해볼 수 있습니다:
볼륨 권한 확인: 도커 컨테이너의 볼륨 마운트 경로가 호스트와 연동되어 있는 경우, 호스트의 파일과 디렉토리가 적절한 권한을 갖고 있는지 확인할 필요가 있습니다. chown
명령을 사용하여 디렉토리의 소유자를 mysql
사용자와 그룹으로 변경할 수 있습니다.
sudo chown -R mysql:mysql /path/to/your/mysql/directory
도커 실행 사용자 확인: MySQL 도커 이미지를 실행할 때 사용자 권한이 제대로 설정되어 있는지도 확인이 필요합니다. 이미지가 권장하는 사용자로 실행되었는지 확인하세요.
Selinux 설정 확인: 만약 사용중인 시스템이 selinux를 사용하고 있다면, selinux 설정을 확인해 권한 문제를 해결해야 할 수도 있습니다.
도커 리눅스 포스트인스톨 설정 확인: 만약 리눅스에서 도커를 사용 중이라면 non-root 사용자를 위한 도커 설정을 확인해 보시는 것도 도움이 될 수 있습니다.
추가로, MySQL의 로그 파일에 더 자세한 정보가 기록되었을 수 있으니, 직접 확인하여 더 구체적인 오류 원인을 찾아보세요.
문제가 계속된다면, 현재 사용 중인 도커 설정 및 MySQL 컨테이너 설정을 자세히 살펴보시는 것이 중요합니다. 도움이 될 만한 자료가 있다면 함께 공유하겠습니다. 다른 도움이 필요하시다면 언제든지 질문해 주세요. 추가적인 정보는 Spring Boot 도커 관련 도큐멘테이션에서 확인하실 수 있습니다.