首先新建数据库维护计划,定时执行数据库备份,打开数据库管理器——管理——维护计划——右键新建维护计划向导——计划更改——选择执行时间。 选择维护任务:备份数据库 选择要备份的数据库,可选数据库备份目录,备份报告。 维护计划添加完成。 ftp上传脚
首先新建数据库维护计划,定时执行数据库备份,打开数据库管理器——>管理——>维护计划——右键新建维护计划向导——>计划更改——>选择执行时间。
选择维护任务:备份数据库
选择要备份的数据库,可选数据库备份目录,备份报告。
维护计划添加完成。
ftp上传脚本,由于windows下ftp命令不支持被动模式,此脚本使用curl命令上传到ftp。
123456789
set sqlpath=d:\back #备份目录set dbname=onovps #备份数据库名称,例onovps.bakset ftphost=onovps.com #ftp服务器地址set ftpuser=ftp #ftp用户set ftppasswd=passwd #ftp密码path=%path%;c:\program files\winrar\;c:\program files\curl\ #设置环境变量cd %sqlpath%rar.exe a %dbname%-%date:~0,10%.rar -df %dbname%.bakcurl -u %ftpuser%:%ftppasswd% -t %dbname%-%date:~0,10%.rar ftp://%ftphost%
然后将此脚本添加到计划任务,定时每天执行。更新:
经过调试发现问题有点多哦,首先维护计划未成功执行,错误日记:sqlserver 错误: 15404,无法获取有关 windows nt 组/用户 'win-kc19q4leiod\administrator' 的信息,错误代码 0x534。
解决:原来之前有更改过计算机名称,更改sql管理器——>安全性——>登录名——>当前管理员账户前计算机名称。
其次维护计划执行后备份的数据库名称是随机的,不便于处理,使用sqlcmd命令备份数据库解决。
12345
sqlcmd -u -p -q backup database onovps to disk=c:\back\onovps.bak-u: #数据库用户 (可选)-p #数据库密码 (可选)#如未指定-u -p以本地账户验证登录#如果数据库以onovps.com形式,须以[onovps.com]方式备份,不然会提示语法错误
