sourcecode

도커에서 MariaDB를 사용하는 방법

copyscript 2022. 12. 26. 20:32
반응형

도커에서 MariaDB를 사용하는 방법

도커에서 사용할 MariaDB 컨테이너를 설정하려고 하는데 뭔가 잘못된 것 같습니다.먼저 다음 명령어를 다운로드하여 실행합니다.

docker run -p 127.0.0.1:8002:80 --name some-mariadb -e MYSQL_ROOT_PASSWORD=my-secret-pw -v c:/mysql -d mariadb:latest

다운로드가 되고 가 컨테이너를 다운로드 합니다.다음으로 다음 SQL 명령을 실행하려고 합니다.

docker exec -it some-mariadb mysql -p -e 'select * from my_table' my_db

그리고 MySql의 사용방법 정보를 알려주고...제가 뭘 잘못하고 있는지 모르겠어요?Windows 머신에서 이 작업을 하고 있습니다.

당신의 명령으로 시도해보니 다음과 같은 출력이 나왔습니다.

$> docker exec -it some-mariadb mysql -p -e 'select * from my_table' my_db
Enter password:
ERROR 1049 (42000): Unknown database 'my_db'

실제로 mariadb가 실행 중이며 출력 오류 메시지가 나타납니다.두 가지 오류가 있습니다.docker run명령어:

  • -p 127.0.0.1:8002:80, mariadb가 포트로 리슨하고 있다.3306Mariadb의 Dockerfile에서 노출된 포트는 3306뿐이라는 것을 알 수 있습니다.네가 원하는 건-p 3306:3306
  • -v c:/mysql, 컨테이너 디렉토리 아래에 볼륨을 추가합니다./c:/mysql단, mariadb의 데이터 볼륨은/var/lib/mysql호스트에서 mysql 데이터를 사용하려면-v <your_host_directory>:/var/lib/mysql

컨테이너 안에 들어가면some-mariadb그리고 시도하다mysql클린트, 넌 알겠지만my_db:

$> docker exec -it some-mariadb bash
root@63154453ff14:/# mysql -u root -pmy-secret-pw
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

따라서 올바른 mysql 데이터 볼륨을 마운트하거나 먼저 init mariadb가 필요합니다.

언급URL : https://stackoverflow.com/questions/43422442/how-to-use-mariadb-in-docker

반응형