如何创建完整数据库备份 (Transact-SQL)
本主题说明如何使用 BACKUP DATABASE 语句创建完整数据库备份。
创建完整数据库备份
执行 BACKUP DATABASE 语句可以创建完整数据库备份,同时指定:
- 要备份的数据库的名称。
- 写入完整数据库备份的备份设备。
指定(可选):
- INIT 子句,用于覆盖备份媒体,并在备份媒体上将该备份作为第一个文件写入。如果没有现有的媒体标头,将自动编写一个。
- SKIP 和 INIT 子句,用于重写备份媒体,即使备份媒体中的备份未过期,或媒体本身的名称与备份媒体中的名称不匹配也重写。
- FORMAT 子句,通过它可以在第一次使用媒体时对备份媒体进行初始化,并覆盖任何现有的媒体标头。
如果已经指定了 FORMAT 子句,则不需要指定 INIT 子句。重要提示: 当使用 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)