제 경우에는 2개의 개별 볼륨을 실행하는 2개의 mariadb 컨테이너가 있습니다.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
952988c62c2c mariadb:10.4 "docker-entrypoint.s…" 22 minutes ago Up 22 minutes 3306/tcp php_dev_db_1
799f2226367f mariadb:10.4 "docker-entrypoint.s…" 4 days ago Up 30 minutes (healthy) 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp test_magento-db-1
한 데이터베이스에서 다른 데이터베이스로 데이터베이스를 파이프하려고 합니다.
docker exec 799f2226367f mysqldump -u magento -pmagento magento > docker exec 952988c62c2c mysql -u magento -pmagento magento
하지만 오류가 발생합니다.
mysqldump: Couldn't find table: "exec"
이유는 모르겠습니다.
답변1
한 데이터베이스에서 다른 데이터베이스로 데이터베이스를 파이프하려고 합니다.
|
따라서 리디렉션() 대신 파이프()를 사용해야 합니다 >
.
docker exec 799f2226367f mysqldump -u magento -pmagento magento | docker exec 952988c62c2c mysql -u magento -pmagento magento
리디렉션은 다음 단어만 사용하기 때문에 오류가 발생하므로 명령은 다음과 동일합니다.
docker exec 799f2226367f mysqldump -u magento -pmagento magento exec 952988c62c2c mysql -u magento -pmagento magento > docker
즉 mysqldump
, 및 테이블 magento
을 덤프해 보십시오 .exec
952988c62c2c
mysql