如何创建完整数据库备份 (Transact-SQL)

本主题说明如何使用 BACKUP DATABASE 语句创建完整数据库备份。

创建完整数据库备份

  1. 执行 BACKUP DATABASE 语句可以创建完整数据库备份,同时指定:

    • 要备份的数据库的名称。
    • 写入完整数据库备份的备份设备。
  2. 指定(可选):

    • INIT 子句,用于覆盖备份媒体,并在备份媒体上将该备份作为第一个文件写入。如果没有现有的媒体标头,将自动编写一个。
    • SKIP 和 INIT 子句,用于重写备份媒体,即使备份媒体中的备份未过期,或媒体本身的名称与备份媒体中的名称不匹配也重写。
    • FORMAT 子句,通过它可以在第一次使用媒体时对备份媒体进行初始化,并覆盖任何现有的媒体标头。
      如果已经指定了 FORMAT 子句,则不需要指定 INIT 子句。
      ms191304.note(zh-cn,SQL.90).gif重要提示:
      当使用 BACKUP 语句的 FORMAT 子句或 INIT 子句时,一定要十分小心,因为它们会破坏以前存储在备份媒体中的所有备份。

示例

A. 备份到磁盘设备

下面的示例通过使用 FORMAT 创建新的媒体集,将整个 AdventureWorks 数据库备份到磁盘。

'C:\AdventureWorks.Bak'
USE AdventureWorks
GO
BACKUP DATABASE AdventureWorks
TO DISK = 'C:\MSSQL\BACKUP\AdventureWorks.Bak'
   WITH FORMAT,
   NAME = 'Full Backup of AdventureWorks'
GO
-- Optionally, create a logical backup device, 
-- AdventureWorks_Backup, for this backup file.
USE master
EXEC sp_addumpdevice 'disk', 'AdventureWorks_Backup', 
'C:\MSSQL\BACKUP\AdventureWorks.Bak'
B. 备份到磁带设备

下面的示例将把整个 MyAdvWorks 数据库备份到磁带。

USE MyAdvWorks
GO
BACKUP DATABASE MyAdvWorks
   TO TAPE = '\\.\Tape0'
   WITH FORMAT,
   NAME = 'Full Backup of MyAdvWorks'
GO
-- Optionally, create a logical backup device, 
-- AdventureWorks_Backup, for this backup tape.
USE master
GO
EXEC sp_addumpdevice 'tape', 'MyAdvWorks_Bak', '\\.\tape0'

请参阅

任务

如何备份数据库 (SQL Server Management Studio)

概念

追加到现有备份集
完整数据库备份
备份 master 数据库的注意事项
备份 model 和 msdb 数据库的注意事项
覆盖备份集
差异数据库备份
使用事务日志备份

其他资源

BACKUP (Transact-SQL)
sp_addumpdevice (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助