mysql本身为我们自己提供的有数据库sql文件导出工具:mysqldump
在此进入cmd窗口中键入命令:
-u 用户名
-p 密码
--databases 导出那个数据库
> 导出的路径
mysqldump -uroot -proot --databases jbxq_project > C:/var/guoheng/sql/jbxq.sql
此时在目录中已经生成了数据库jbxq_project的sql文件
如果不把mysqldump加入Path环境变量的话,我们写脚本就要使用全路径
现在我们利用windows的任务管理计划定时执行脚本,达到定时备份数据库数据的目的
建立脚本bat文件内容如下:写你自己的mysqldump的路径和你自己导出的数据库名称和导出的路径
@echo off
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
md C:\var\guoheng\sql\%Ymd%\
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump" -uroot -proot --databases jbxq_project > C:\var\guoheng\sql\%Ymd%\jbxq_project%Ymd%.sql
echo "数据库备份完毕"
如果路径中有空格,一定要用英文双引号包裹,否则导出的sql文件0KB
双击bat启动看一下效果
今天日期的文件夹以及sql就完成了
下面使用windows任务执行计划定时执行脚本
1、打开 控制面板 > 管理工具 > 任务计划程序,创建任务:
设置一下就完成啦
上述的脚本建立的文件夹是年月日,如果是年月日时分秒会有问题
下面单独写出年月日时分秒的bat文件
@echo off
set dd=%date:~8,2%
set mm=%date:~5,2%
set yy=%date:~0,4%
set Tss=%TIME:~6,2%
set Tmm=%TIME:~3,2%
set Thh=%TIME:~0,2%
set Thh=%Thh: =0%
md C:\var\guoheng\sql\%yy%-%mm%-%dd%_%Thh%.%Tmm%.%Tss%\
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump" -uroot -proot --databases jbxq_project > C:\var\guoheng\sql\%yy%-%mm%-%dd%_%Thh%.%Tmm%.%Tss%\jbxq_project%yy%-%mm%-%dd%_%Thh%.%Tmm%.%Tss%.sql
echo "数据库备份完毕"
在更新一点东西:mysql命令导入sql文件到指定数据库,然后在用任务执行计划定时运行
@echo off
start cmd /k "cd/d C:\Program Files\MySQL\MySQL Server 5.7\bin&&mysql -uroot -proot ng-ant-admin-api<C:\管理系统\sql\ng-ant-admin-api.sql"
exit
start 是用来启动一个应用的,使用方式为:start 程序名
cmd /k 表示cmd后面的命令执行完后不关闭窗口
cmd /c 表示执行完cmd命令后关闭命令窗口