반응형
도커에서 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가 포트로 리슨하고 있다.3306
Mariadb의 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
반응형
'sourcecode' 카테고리의 다른 글
PHP 세션은 어떻게 작동합니까?('사용방법'이 아닙니다.") (0) | 2022.12.26 |
---|---|
MySQL-Server 설치 시 MariaDB 설치를 방지하는 방법 (0) | 2022.12.26 |
짝수인지 홀수인지 확인 (0) | 2022.12.26 |
작년도의 액티브 오더를 받는 방법 (0) | 2022.12.26 |
동기 프로그래밍과 비동기 프로그래밍(node.js)의 차이점은 무엇입니까? (0) | 2022.12.26 |