备份数据库.bat
@echo offset path=%path%;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binnecho 数据库备份开始osql.exe -S 127.0.0.1 -U sa -P 123456 -i sqlserverbackup.sql -o c:\backup\sqlserverbackup.outecho 数据库备份完成pause
sqlserverbackup.sql
DECLARE @name varchar(50)DECLARE @datetime char(14)DECLARE @path varchar(255)DECLARE @bakfile varchar(255)set @name='DataSample'set @datetime=CONVERT(char(8),getdate(),112) + REPLACE(CONVERT(char(8),getdate(),108),':','')set @path='c:\backup\'set @bakfile=@path+''+@name+'_'+'bak_'+@datetime+'.BAK'backup database @name to disk=@bakfile with name=@namego
还原数据库.bat
@echo offecho 开始还原数据库net start "mssqlserver"osql -U sa -P 123456 -i c:\backup\sqlserverrestore.sql -o c:\backup\sqlserverrestore.outecho 还原数据库完成pause
sqlserverrestore.sql
declare @dumpfile varchar(50)declare @msg varchar(70)select @dumpfile = 'c:\backup\DataSample_bak_20170718145556.BAK'select @msg=convert(char(26),getdate(),9)print @msgrestore DATABASE DataSample from disk=@dumpfileif (@@ERROR <> 0 )beginselect @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常'print @msgendelsebeginselect @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕'print @msgenddeclare @dumpfile varchar(50)declare @msg varchar(70)select @dumpfile = 'c:\backup\DataSample_bak_20170718161443.BAK'select @msg=convert(char(26),getdate(),9)print @msg----同一个备份文件还原成不同名称数据库RESTORE DATABASE DataSample1FROM disk=@dumpfileWITH RECOVERY,MOVE 'DataSample' TO 'D:\MyData\DataSample1.mdf',MOVE 'DataSample_Log' TO 'D:\MyData\DataSample1_Log.ldf'if (@@ERROR <> 0 )beginselect @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常'print @msgendelsebeginselect @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕'print @msgend
摘自:CSDN 羽之大公公
https://blog.csdn.net/u011334954/article/details/93623339
文章转载自albertrelax,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




