Docker Mysql 导入导出操作

mysql导出

备份全库:

docker exec -id [mysql容器名] mysqldump -uroot -p123456 库名 > /path/库名.sql

只备份数据:

docker exec -id [mysql容器名] mysqldump -t -uroot -p123456 库名 > /path/库名_data.sql

只备份结构:

docker exec -id [mysql容器名] mysqldump --opt -d -uroot -p123456 库名 > /path/库名_structure.sql

定时每天凌晨1:30备份,文件名带日期:

30 1 * * * root docker exec -id [mysql容器名] mysqldump -uroot -p123456 库名 > /path/库名_`date '+%Y-%m-%d'`.sql

报错:

the input device is not a TTY

解决方法:

-it去掉t参数

  • 加入参数-d

mysql导入

  • 方法一
# 1.拷贝SQL文件到mysql容器中
docker cp 宿主机sql文件路径 mysql:容器目录

# 2. 创建数据库
docker exec -it [mysql容器名]  mysql -uroot -p123456 
mysql> use 库名;

# 3.登陆控制台执行source 命令
mysql> source 容器sql文件路径
  • 方法二
docker exec -id [mysql容器名] mysql -uroot -p123456  -D 库名 < 宿主机sql文件路径

猜你喜欢

转载自blog.csdn.net/cljdsc/article/details/128485864