搜索
您的当前位置:首页正文

批处理(bat)实现SQLServer数据库备份与还原

来源:易榕旅网
批处理(bat)实现SQLServer数据库备份与还原

--1.数据库备份脚本sqlserverbackup.sql

-- SQLServer2000数据库系统清理⽤户数据库⽇志和备份⽤户数据库数据脚本

declare @dumpfile varchar(50)declare @msg varchar(70)

select @dumpfile = 'd:\\backup\\north' + datename(dw,getdate())+'.bak' select @msg=convert(char(26),getdate(),9)+'-----正在清理⽇志......' print @msg

backup tran northwind with truncate_onlyif (@@ERROR <> 0 )begin

select @msg=convert(char(26),getdate(),9)+'-----清理⽇志失败或出现异常......' print @msgendelsebegin

select @msg=convert(char(26),getdate(),9)+'-----清理⽇志完毕......' print @msgend

select @msg=convert(char(26),getdate(),9)+'-----开始备份northwind数据库.....' print @msg

backup database northwind to disk=@dumpfileif (@@ERROR <> 0 )begin

select @msg=convert(char(26),getdate(),9)+'-----备份数据失败或出现异常' print @msgendelsebegin

select @msg=convert(char(26),getdate(),9)+'-----数据库备份完毕' print @msgend

--2.数据库还原脚本sqlserverrestore.sql

declare @dumpfile varchar(50)declare @msg varchar(70)

select @dumpfile = 'd:\\backup\\north' + datename(dw,getdate())+'.bak' select @msg=convert(char(26),getdate(),9) print @msg

restore database northwind from disk=@dumpfileif (@@ERROR <> 0 )begin

select @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常' print @msgendelsebegin

select @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕' print @msgend

--将下⾯的脚本保存为: 备份数据库.bat

@net start \"mssqlserver\"

@isql -Usa -Padmin -i d:\\backup\\sqlserverbackup.sql -o d:\\backup\\sqlserverbackup.out@echo ……正在备份中……

@pause

--将下⾯的脚本保存为:还原数据库.bat

@echo ******开始还原数据库*****@net start \"mssqlserver\"

@isql -Usa -Psa -i d:\\backup\\sqlserverrestore.sql -o d:\\backup\\sqlserverrestore.out@pause

http://juge001.blog.163.com/blog/static/63617809201011645733472/

因篇幅问题不能全部显示,请点此查看更多更全内容

Top