我想让某个数据库第一次就备份一个全的(整个数据库备份),然后以后每次备份都备份上一次以后的异动数据(删除\新增\修改).这样做的话只用产生一个备份文件 但同时也备份了所有数据

解决方案 »

  1.   


    如何创建差异数据库备份 (Transact-SQL)
    创建差异数据库备份重要  除非首先备份数据库,否则不可能创建差异数据库备份。执行 BACKUP DATABASE 语句以创建差异数据库备份,同时指定: 
    要备份的数据库的名称。
    数据库备份将写入的备份设备。
    DIFFERENTIAL 子句,通过它可以指定只对在创建最新的数据库备份后数据库中发生变化的部分进行备份。 
    指定(可选): 
    INIT 子句,通过它可以重写备份媒体,并在备份媒体上将该备份作为第一个文件写入。如果没有现成的媒体头,备份过程将自动写入一个。
    SKIP 和 INIT 子句,通过它们可以在备份媒体中仍然存在未失效的备份,或在媒体本身的名称与备份媒体中的名称不匹配时重写备份媒体。
    FORMAT 子句,通过它可以在第一次使用媒体时对备份媒体进行完全初始化,并覆盖任何现有的媒体头。 
    如果已经指定了 FORMAT 子句,则不需要指定 INIT 子句。重要  当使用 BACKUP 语句的 FORMAT 子句或 INIT 子句时,一定要十分小心,因为它们会破坏以前存储在备份媒体中的所有备份。
    示例
    下例为 MyNwind 数据库创建一个完整的数据库备份和一个差异数据库备份。-- Create a full database backup first.
    BACKUP DATABASE MyNwind 
       TO MyNwind_1 
       WITH INIT
    GO
    -- Time elapses.
    -- Create a differential database backup, appending the backup
    -- to the backup device containing the database backup.
    BACKUP DATABASE MyNwind
       TO MyNwind_1
       WITH DIFFERENTIAL
    GO