[英]docker-compose transfer mysql to another host
我正在使用docker-compose運行MYSQL容器並將其鏈接到www-server
mysql:
image: mysql
container_name: lip-mysql
ports:
- "3030:3306"
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=user-db
- MYSQL_USER=user
- MYSQL_PASSWORD=user
volumes:
- ./etc/mysql:/var/lib/mysql
當我在自己的計算機上運行它並希望將其傳輸到生產環境時。 我做這個
我應該如何將mysql數據移至新環境?
您是否可以從計算機中轉儲MySQL DB並將其還原到其他環境?
轉儲數據庫:
docker exec -it lip-mysql mysqldump --opt -u [uname] -p[pass] [dbname] > [backupfile.sql]
還原數據庫:
docker exec -it lip-mysql mysql -u [uname] -p[pass] [db_to_restore] < [backupfile.sql]
您還可以將MySQL docker映像固定在docker-compose文件中,以避免意外的MySQL引擎更新。
這是我使用的解決方案。
volumes: - ./etc/mysql:/var/lib/mysql
mysql volumes: - ./etc/mysql:/var/lib/mysql
服務器 這是開始的正確docker-compose.yml:
mysql:
image: mysql:5.7
container_name: lip-mysql
ports:
- "3030:3306"
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=user-db
- MYSQL_USER=user
- MYSQL_PASSWORD=user
volumes:
- ./etc/mysql:/var/lib/mysql
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.