• 使用SQL语句还原数据库 2012.3.20


    --返回由备份集内包含的数据库和日志文件列表组成的结果集。
    --主要获得逻辑文件名
    USE master
    RESTORE FILELISTONLY
       FROM DISK = 'g:ack.Bak' 
    Go
    ************************************************
    /**//*
    利用bak恢复数据库,强制还原(REPLACE)
    STATS = 10 每完成10%显示一条记录
    DBTest和DBTest_log是上面g:ack.Bak里的逻辑文件
    */
    USE master
    RESTORE DATABASE DB 
       FROM DISK = 'g:ack.Bak'
       WITH MOVE 'DBTest' TO 'E:Program FilesMicrosoft SQL Server2005DataDB.mdf', 
       MOVE 'DBTest_log' TO 'E:Program FilesMicrosoft SQL Server2005DataDB_log.ldf',
    STATS = 10, REPLACE
    GO
    ++++++++++++++++++++++++++++++++
    
    /**//*
    备份数据DB 到.bak文件。然后利用此bak文件恢复一个新的数据库DBTest。
    */
    USE master
    BACKUP DATABASE DB 
      TO DISK = 'g:DBBack0930.bak' 
    RESTORE FILELISTONLY 
      FROM DISK = 'g:DBBack0930.bak' 
    RESTORE DATABASE DBTest 
      FROM DISK = 'g:DBBack0930.bak' 
      WITH MOVE 'DBTest' TO 'E:Program FilesMicrosoft SQL Server2005DataDBTest.mdf', 
      MOVE 'DBTest_log' TO 'E:Program FilesMicrosoft SQL Server2005DataDBTest_log.ldf'
    GO 
    ---******************************
    存储过程
    SET ANSI_NULLS ON
    SET QUOTED_IDENTIFIER ON
    go
    /*可以强制还原数据库,也可以利用备份文件重新创建一个数据库*/
    ALTER PROCEDURE [dbo].[restoreDB]
        (
          --@path NVARCHAR(32) ,
          @name NVARCHAR(64) ,--数据库备份的名称
          @mdfName NVARCHAR(64) ,--物理文件mdf的名称
          @ldfName NVARCHAR(64)--物理文件ldf的名称
        )
    AS 
        BEGIN
            DECLARE @path NVARCHAR(64)--数据库备份的地址
            DECLARE @mdfPath NVARCHAR(64)--mdf文件的存放地址
            DECLARE @ldfPath NVARCHAR(64)--ldf文件的存放地址
            SET @path = 'E:DB' + @name + '.bak'
            SET @mdfPath = 'E:DB' + @mdfName + '.mdf'
            SET @ldfPath = 'E:DB' + @ldfName + '.ldf'
            --RESTORE FILELISTONLY FROM DISK = @path --获取逻辑文件的名称
            RESTORE DATABASE @mdfName FROM DISK=@path WITH STATS = 10,REPLACE,--replace表示强制替换,STATS = 10表示每进行10%提示一下,@mdfName 就是DB的name
            MOVE 'Relaship' TO @mdfPath,
            MOVE 'Relaship_log' TO @ldfPath
        END
  • 相关阅读:
    2014-7 Andrew Ng 自动化所报告听后感
    转百度前辈的Trados使用心得
    回文数
    整数反转
    无重复字符的最长子串
    vim配色
    mysql 遇到的问题&错误总结
    Ubuntu更换软件源
    各数据类型在64位32位系统占字节数
    不得不说fdm真的好用
  • 原文地址:https://www.cnblogs.com/changshuo/p/3434417.html
Copyright © 2020-2023  润新知