zoukankan      html  css  js  c++  java
  • MS2000 差异备份 还原

     --查询文件是否存在
    CREATE TABLE #tmp ([File Exists] BIT, [File is a Directory] BIT, [Parent Directory Exists] BIT)
    INSERT INTO #tmp ([File Exists], [File is a Directory], [Parent Directory Exists])
    EXEC master.dbo.xp_fileexist 'D:\Test.bak'
    SELECT * FROM #tmp
    DROP TABLE #tmp

    --完整备份数据库

    BACKUP DATABASE MyBakTest TO DISK='D:\Test.bak' WITH FORMAT

    --对tb表插入第一条记录

    INSERT INTO tb_user(uname) VALUES('第一1次差异备份')

    --第一次差异备份

    BACKUP DATABASE MyBakTest TO DISK='D:\Test_One_Dif.bak' WITH FORMAT,DIFFERENTIAL

    --对tb表插入第二条记录

    INSERT INTO tb_user(uname) VALUES('第二3次差异备份')

    --第二次差异备份

    BACKUP DATABASE MyBakTest TO DISK='D:\Test_Two_Dif.bak' WITH FORMAT,DIFFERENTIAL

    --OK.现在直接还原.完整备份+第二次差异备份.看看第二条记录在不在.

    GO

    --完整备份还原
    RESTORE DATABASE MyBackTest2 FROM DISK='D:\Test.bak' WITH REPLACE,NORECOVERY

    RESTORE DATABASE MyBackTest2 FROM DISK='D:\Test_one_Dif.bak' WITH RECOVERY

    --第二次差异备份还原
    RESTORE DATABASE MyBackTest2 FROM DISK='D:\Test_Two_Dif.bak' WITH RECOVERY
     
    --若存储位置有变换则需要更改存储位置,使用restore filelistonly 查询逻辑名
    restore filelistonly from disk='F:\DBBak\VNetBilling_db_201112060230.BAK'
    --使用 Move 更改存储位置并还原
    RESTORE DATABASE SCVNetBillings FROM DISK='F:\DBBak\VNetBilling_db_201112060230.BAK' WITH REPLACE,NORECOVERY,
    move 'vnet_billing_data001_2'     to 'F:\DBBak\VNET_Billing\data\vnet_dbdata2_01.mdf',
    move 'vnet_billing_data002_16'     to 'F:\DBBak\VNET_Billing\data\vnet_dbdata16_01.ndf'
    ...
  • 相关阅读:
    [Leetcode] Two Sum
    [Leetcode] 4Sum
    [Leetcode] Word Break
    [Leetcode] Evaluate Reverse Polish Notation
    [Leetcode] Distinct Subsequences
    [Leetcode] Triangle
    [Leetcode] Single Number II
    [Leetcode] Convert Sorted Array to Binary Search Tree
    一起手写吧!Promise!
    一起手写吧!sleep函数!
  • 原文地址:https://www.cnblogs.com/lidingwen/p/2282506.html
Copyright © 2011-2022 走看看