Home > Database > Mysql Tutorial > SQL2008定时备份数据库并上传到FTP

SQL2008定时备份数据库并上传到FTP

WBOY
Release: 2016-06-07 15:35:28
Original
1485 people have browsed it

首先新建数据库维护计划,定时执行数据库备份,打开数据库管理器——管理——维护计划——右键新建维护计划向导——计划更改——选择执行时间。 选择维护任务:备份数据库 选择要备份的数据库,可选数据库备份目录,备份报告。 维护计划添加完成。 FTP上传脚

首先新建数据库维护计划,定时执行数据库备份,打开数据库管理器——>管理——>维护计划——右键新建维护计划向导——>计划更改——>选择执行时间。
SQL2008定时备份数据库并上传到FTP
选择维护任务:备份数据库
SQL2008定时备份数据库并上传到FTP
选择要备份的数据库,可选数据库备份目录,备份报告。
SQL2008定时备份数据库并上传到FTP
维护计划添加完成。
SQL2008定时备份数据库并上传到FTP
FTP上传脚本,由于windows下ftp命令不支持被动模式,此脚本使用curl命令上传到FTP。

1
2
3
4
5
6
7
8
9
Copy after login
<span><strong>set</strong></span> <span>sqlpath</span>=d:\back <span><em>#备份目录</em></span>
<span><strong>set</strong></span> <span>dbname</span>=onovps <span><em>#备份数据库名称,例onovps.bak</em></span>
<span><strong>set</strong></span> <span>ftphost</span>=onovps.com <span><em>#FTP服务器地址</em></span>
<span><strong>set</strong></span> <span>ftpuser</span>=<span><strong>ftp</strong></span> <span><em>#FTP用户</em></span>
<span><strong>set</strong></span> <span>ftppasswd</span>=<span><strong>passwd</strong></span> <span><em>#FTP密码</em></span>
<span>path</span>=<span><strong>%</strong></span>path<span><strong>%</strong></span>;C:\Program Files\WinRAR\;C:\Program Files\curl\ <span><em>#设置环境变量</em></span>
<span><strong>cd</strong></span> <span><strong>%</strong></span>sqlpath<span><strong>%</strong></span>
Rar.exe a  <span>"%dbname%"</span>-<span>"%date:~0,10%"</span>.rar <span>-df</span> <span>"%dbname%"</span>.bak
curl <span>-u</span>  <span><strong>%</strong></span>ftpuser<span><strong>%</strong></span>:<span><strong>%</strong></span>ftppasswd<span><strong>%</strong></span> <span>-T</span> <span><strong>%</strong></span>dbname<span><strong>%</strong></span>-<span>"%date:~0,10%"</span>.rar <span><strong>ftp</strong></span>:<span><strong>//%</strong></span>ftphost<span><strong>%</strong></span>
Copy after login

然后将此脚本添加到计划任务,定时每天执行。

更新:
经过调试发现问题有点多哦,首先维护计划未成功执行,错误日记:SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 'WIN-KC19Q4LEIOD\Administrator' 的信息,错误代码 0x534。
解决:原来之前有更改过计算机名称,更改SQL管理器——>安全性——>登录名——>当前管理员账户前计算机名称。
其次维护计划执行后备份的数据库名称是随机的,不便于处理,使用sqlcmd命令备份数据库解决。

1
2
3
4
5
Copy after login
sqlcmd <span>-U</span> <span>-P</span> <span>-Q</span> <span>"backup database onovps to disk="</span>c:\back\onovps.bak<span>"
-U:  #数据库用户 (可选)
-P   #数据库密码 (可选)
#如未指定-U -P以本地账户验证登录
#如果数据库以onovps.com形式,须以[onovps.com]方式备份,不然会提示语法错误</span>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template