>  기사  >  운영 및 유지보수  >  docker mysql이 실행되지 않습니다

docker mysql이 실행되지 않습니다

王林
王林원래의
2023-05-13 13:16:37894검색

Docker는 개발자가 애플리케이션을 보다 쉽게 ​​구축, 배포 및 실행할 수 있도록 돕는 오픈 소스 컨테이너화 플랫폼입니다.

MySQL은 널리 사용되는 관계형 데이터베이스 관리 시스템이며 Docker Hub에서 가장 인기 있는 이미지 중 하나입니다. 그러나 Docker에서 MySQL을 실행할 때 MySQL이 실행되지 않는 등의 문제가 발생할 수 있습니다.

이 글에서는 Docker MySQL이 실행되지 않는 이유와 해결 방법에 대해 알아 보겠습니다.

원인 분석

  1. MySQL 서버가 올바르게 설치되지 않았습니다

Docker에서 MySQL을 실행하면 MySQL 서버가 올바르게 설치되지 않은 것을 확인할 수 있습니다. 이는 Docker 컨테이너가 MySQL 이미지를 올바르게 다운로드하지 않기 때문에 발생할 수 있습니다.

이 문제를 해결하려면 다음 명령을 사용하여 MySQL 이미지를 다운로드할 수 있습니다.

docker pull mysql:latest
  1. MySQL 서버가 올바르게 구성되지 않았습니다.

MySQL 서버가 올바르게 설치되었더라도 구성 문제가 있을 수 있습니다. 예를 들어, MySQL 서버가 올바르게 구성되지 않은 경우 시작에 실패하여 실행이 불가능할 수 있습니다.

이 문제를 해결하려면 다음 명령을 사용하여 Docker 컨테이너 내에서 MySQL 서버를 시작할 수 있습니다.

docker run --name mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag

여기서 PASSWORD는 MySQL 루트 비밀번호이고 tag는 사용하려는 MySQL 버전 태그입니다.

  1. 데이터베이스 탑재 디렉터리 권한 문제

Docker에서 MySQL 서버를 실행할 때 데이터베이스 탑재 디렉터리 권한이 올바르게 구성되지 않으면 MySQL이 실행되지 않을 수 있습니다.

이 문제를 해결하려면 다음 명령을 사용하여 Docker 컨테이너를 시작하고 데이터베이스 탑재 디렉터리의 권한을 구성할 수 있습니다.

docker run --name mysql -v /your/data/dir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag --default-authentication-plugin=mysql_native_password

그 중 /your/data/dir은 구성하려는 데이터베이스 탑재 디렉터리입니다. PASSWORD는 MySQL 루트 비밀번호이고, tag는 사용하려는 MySQL 버전 태그입니다.

해결방법

  1. MySQL 이미지가 제대로 설치되었는지 확인하세요

앞서 말씀드린 것처럼 MySQL 이미지가 제대로 설치되지 않으면 MySQL이 실행되지 않을 수 있습니다. 다음 명령을 사용하여 MySQL 이미지가 올바르게 설치되었는지 확인할 수 있습니다.

docker images | grep mysql

출력에 mysql 문자열이 있으면 MySQL 이미지가 올바르게 설치된 것입니다.

  1. 올바른 버전 태그를 사용하세요

지원되지 않는 MySQL 버전 태그를 사용하는 경우 MySQL이 실행되지 않을 수 있습니다. 이 문제를 해결하려면 다음 명령을 사용하여 현재 사용 가능한 버전 태그를 볼 수 있습니다.

docker search mysql

그런 다음 지원되는 버전 태그로 MySQL 컨테이너를 시작합니다.

  1. MySQL 서버 상태 확인

MySQL 서버가 시작되지 않으면 쿼리를 실행할 수 없습니다. MySQL 서버가 제대로 작동하는지 확인하려면 다음 명령을 사용할 수 있습니다.

docker ps -a

MySQL 컨테이너가 실행되고 있지 않으면 다음 명령을 사용하여 MySQL 컨테이너를 시작할 수 있습니다.

docker start mysql
  1. 데이터베이스 마운트 디렉터리를 확인하세요

MySQL 컨테이너의 데이터베이스가 탑재된 디렉터리가 올바르게 구성되지 않은 경우 실행이 실패합니다. 다음 명령을 사용하여 데이터베이스 탑재 디렉터리가 올바르게 구성되었는지 확인할 수 있습니다.

docker inspect mysql

데이터베이스 탑재 디렉터리가 올바르게 구성되지 않은 경우 다음 명령을 사용하여 MySQL 컨테이너를 다시 시작할 수 있습니다.

docker stop mysql
docker rm mysql
docker run --name mysql -v /your/data/dir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag --default-authentication-plugin=mysql_native_password

그중 /your /data/dir은 원하는 것입니다. 데이터베이스 탑재 디렉터리를 구성하고, PASSWORD는 MySQL 루트 비밀번호, tag는 사용하려는 MySQL 버전 태그입니다.

결론

Docker MySQL을 실행할 때 실행되지 않는 문제가 발생하는 데에는 MySQL 서버의 잘못된 설치, 서버의 잘못된 구성, 권한 문제 등을 포함하여 여러 가지 이유가 있을 수 있습니다. 이 문제를 해결하려면 이 문서에 제공된 해결 방법을 사용할 수 있습니다. 동시에 Docker를 더 잘 활용하여 자신만의 소프트웨어 개발 환경을 구축하려면 컨테이너화 기술의 학습과 실습에 주의를 기울이고 전문적인 기술 역량을 배양하는 것도 필요합니다.

위 내용은 docker mysql이 실행되지 않습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.