背景:当数据库服务器使用的docker容器部署的MySlq服务时,我们如何在不进入docker容器的前提下在宿主机上执行命令就能把备份文件备份到宿主机上。
前提条件:你的宿主机已经安装好MySql Docker容器,如何安装请自行搜搜,执行docker ps -a查看当前容器运行状态,如下图:
备份
1.全量备份,命令如下{dockerName}为上图中选中的mysql_volues,其他的我认为不用解释了
docker exec -i {dockerName} mysqldump -h127.0.0.1 -p3306 -u{MysqlUserName} -p{MyqlPass} --databases {dataBase1} {dataBase2} > /opt/backup/dbz111.sql
执行效果如下:
2.增量备份,增量备份需要配置bin_log,配置方法用两种,一种是映射文件配置,一种是进入docker bash里面去配置,具体配置不赘述了。列举下看下图我的配置,不了解的自行百度有很多教程。