一、背景
承接上一篇文章《如何使用mysqldump备份数据库》,数据库备份后将用于恢复或者在多个测试环境上迁移。下面描述如何通过批处理文件实现数据加载恢复。
二、环境准备
跟上一篇一样,在back_up文件夹下增加loaddata.bat文件。
三、开发脚本
在loaddata.bat中增加如下内容:
::将备份的数据加载到数据库 @echo off ::1、初始化待加载数据库IP地址与数据库名称的对应关系 set dbIpMap="192.168.1.102,testdb1"^ "192.168.1.102,testdb2"^ "192.168.1.102,testdb3" REM 输入导入文件路径 set /p folderName=请输入导入文件路径: ::设置变量延时赋值 setlocal ENABLEDELAYEDEXPANSION ::3、循环加载所有数据库数据 for %%a in (%dbIpMap%) do ( set dbPair=%%a ::删除引号 set dbip=!dbPair:"=! @echo 正在加载数据:!dbip!... for /f "delims=, tokens=1,2" %%i in ("!dbip!") do ( set ip=%%i set dbName=%%j REM 解压文件 7z e "%folderName%\!dbName!.zip" -y REM 加载文件到数据库 mysql -h192.168.1.102 -uroot !dbName!<"!dbName!.sql" REM 加载后删除解压的文件 del /f "!dbName!.sql" ) @echo 加载数据完成! )