zoukankan      html  css  js  c++  java
  • 批处理实现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_only

    if (@@ERROR <> 0 )

    begin

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

       print @msg

    end

    else

    begin

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

       print @msg

    end

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

       print @msg

    backup database northwind to disk=@dumpfile

    if (@@ERROR <> 0 )

    begin

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

       print @msg

    end

    else

    begin

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

       print @msg

    end

     

     

    @net start "mssqlserver"

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

    @echo ……正在备份中……

    @pause

     

    --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=@dumpfile

    if (@@ERROR <> 0 )

    begin

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

       print @msg

    end

    else

    begin

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

       print @msg

    end

     

    --将下面的脚本保存为: 备份数据库.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

     

  • 相关阅读:
    MySQL统计逗号分隔字段元素的个数
    MySQL学习(十)索引
    MySQL学习(十一)为什么不推荐使用uuid和雪花id
    1.计算机系统概论
    MySQL学习(十二)排序原理
    MySQL学习(九)frm与ibd了解
    MySQL学习(十一)B树与B+树了解
    MySQL 某一列的值加入到另一列
    MySQL学习(十三)InnoDB
    IOSios微信打开网页键盘弹起后页面上滑,导致弹框里的按钮响应区域错位
  • 原文地址:https://www.cnblogs.com/cyan/p/1279311.html
Copyright © 2011-2022 走看看