인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

kongminoo님의 프로필 이미지

작성한 질문수

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

MariaDB

도커로 mysql을 가동했으면 어떻게 해야할까요?

작성

·

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 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다.
kongminoo님이 직면하신 오류는 MySQL 서버가 binlog.index 파일에 접근할 수 없다는 권한 문제로 보입니다. 이를 해결하기 위해 몇 가지 방법을 시도해볼 수 있습니다:

  1. 볼륨 권한 확인: 도커 컨테이너의 볼륨 마운트 경로가 호스트와 연동되어 있는 경우, 호스트의 파일과 디렉토리가 적절한 권한을 갖고 있는지 확인할 필요가 있습니다. chown 명령을 사용하여 디렉토리의 소유자를 mysql 사용자와 그룹으로 변경할 수 있습니다.

    sudo chown -R mysql:mysql /path/to/your/mysql/directory
    
  2. 도커 실행 사용자 확인: MySQL 도커 이미지를 실행할 때 사용자 권한이 제대로 설정되어 있는지도 확인이 필요합니다. 이미지가 권장하는 사용자로 실행되었는지 확인하세요.

  3. Selinux 설정 확인: 만약 사용중인 시스템이 selinux를 사용하고 있다면, selinux 설정을 확인해 권한 문제를 해결해야 할 수도 있습니다.

  4. 도커 리눅스 포스트인스톨 설정 확인: 만약 리눅스에서 도커를 사용 중이라면 non-root 사용자를 위한 도커 설정을 확인해 보시는 것도 도움이 될 수 있습니다.

추가로, MySQL의 로그 파일에 더 자세한 정보가 기록되었을 수 있으니, 직접 확인하여 더 구체적인 오류 원인을 찾아보세요.

문제가 계속된다면, 현재 사용 중인 도커 설정 및 MySQL 컨테이너 설정을 자세히 살펴보시는 것이 중요합니다. 도움이 될 만한 자료가 있다면 함께 공유하겠습니다. 다른 도움이 필요하시다면 언제든지 질문해 주세요. 추가적인 정보는 Spring Boot 도커 관련 도큐멘테이션에서 확인하실 수 있습니다.