同步数据库bat脚本

在开发中, 如果需要将测试数据库同步到本地进行本地的测试, 可以执行一下脚本进行同步

 1 @ECHO off
 2 
 3 TITLE databaseBackup
 4 
 5 REM : 该脚本会将 191 的 database_name 库同步到 75 的 database_name 库
 6 REM : 源数据库: IP 端口 用户名 密码
 7 SET S_DB_HOST=192.168.1.191
 8 SET S_DB_PORT=3306
 9 SET S_DB_USER=xxxxxx
10 SET S_DB_PSWD=xxxxxxxx
11 
12 REM : 目标数据库: IP 端口 用户名 密码
13 SET C_DB_HOST=192.168.1.75
14 SET C_DB_PORT=3306
15 SET C_DB_USER=xxxxxx
16 SET C_DB_PSWD=xxxxxxxx
17 
18 :databaseStart
19 SET /p databaseFlag=Whether backup database_name (Y/N): 
20 CALL:myBackupFunction %databaseFlag% database_name databaseStart
21 :databaseEnd
22 
23 ECHO database backup done
24 
25 PAUSE
26 
27 :myBackupFunction
28 IF %~1==y (
29     CALL:myBackupStartFunction %~2
30 ) ELSE (
31     IF %~1==Y (
32         CALL:myBackupStartFunction %~2
33     ) ELSE (
34         IF %~1==n (
35             ECHO Don`t backup %~2
36         ) ELSE (
37             IF %~1==N (
38                 ECHO Don`t backup %~2
39             ) ELSE (
40                 GOTO %~3
41             )
42         )
43     )
44 )
45 GOTO:EOF
46 :myBackupFunctionEnd
47 
48 :myBackupStartFunction
49 ECHO ========================================== backup %~1 start ==========================================
50 REM : 备份数据库到 E:APIsql 目录中
51 CALL mysqldump -h%S_DB_HOST% -u%S_DB_USER% -p%S_DB_PSWD% -P%S_DB_PORT% %~1 --add-drop-database > E:APIsql\%~1.sql
52 REM : 执行备份出来的数据库SQL文件
53 CALL mysql -h%C_DB_HOST% -u%C_DB_USER% -p%C_DB_PSWD% -P%C_DB_PORT% %~1 < E:APIsql\%~1.sql
54 ECHO ========================================== backup %~1 done  ==========================================
55 :myBackupStartFunctionEnd
原文地址:https://www.cnblogs.com/yanwu0527/p/10530324.html