[转] sql server 备份
A. 备份整个数据库
下面的示例将 AdventureWorks2008R2 数据库备份到磁盘文件。
复制代码 | |
---|---|
BACKUP DATABASE AdventureWorks2008R2 TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak' WITH FORMAT; GO |
B. 备份数据库和日志
下面的示例备份 AdventureWorks2008R2 示例数据库,默认情况下,该数据库使用简单恢复模式。若要支持日志备份,请将 AdventureWorks2008R2 数据库改为使用完整恢复模式。
接下来,该示例使用 创建一个逻辑以备份数据 (AdvWorksData
),并创建另一个逻辑备份设备以备份日志 (AdvWorksLog
)。
然后,该示例对 AdvWorksData
创建完整数据库备份,并在一段更新活动过后将日志备份到 AdvWorksLog
。
复制代码 | |
---|---|
-- To permit log backups, before the full database backup, modify the database -- to use the full recovery model. USE master; GO ALTER DATABASE AdventureWorks2008R2 SET RECOVERY FULL; GO -- Create AdvWorksData and AdvWorksLog logical backup devices. USE master GO EXEC sp_addumpdevice 'disk', 'AdvWorksData', 'Z:\SQLServerBackups\AdvWorksData.bak'; GO EXEC sp_addumpdevice 'disk', 'AdvWorksLog', 'X:\SQLServerBackups\AdvWorksLog.bak'; GO -- Back up the full AdventureWorks2008R2 database. BACKUP DATABASE AdventureWorks2008R2 TO AdvWorksData; GO -- Back up the AdventureWorks2008R2 log. BACKUP LOG AdventureWorks2008R2 TO AdvWorksLog; GO |
注意: |
---|
对于生产数据库,需要定期备份日志。应当经常进行日志备份,以提供足够的保护来防止数据丢失。
|
C. 创建辅助文件组的完整文件备份
下面的示例将对两个辅助文件组中的各个文件创建完整文件备份。
复制代码 | |
---|---|
--Back up the files in SalesGroup1: BACKUP DATABASE Sales FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2' TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck' GO |
D. 创建辅助文件组的差异文件备份
下面的示例将对两个辅助文件组中的各个文件创建差异文件备份。
复制代码 | |
---|---|
--Back up the files in SalesGroup1: BACKUP DATABASE Sales FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2' TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck' WITH DIFFERENTIAL GO |
E. 创建和备份到单簇镜像介质集
下面的示例将创建包含一个介质簇和四个镜像的镜像介质集,并将 AdventureWorks2008R2 数据库备份到其中。
复制代码 | |
---|---|
BACKUP DATABASE AdventureWorks2008R2 TO TAPE = '\\.\tape0' MIRROR TO TAPE = '\\.\tape1' MIRROR TO TAPE = '\\.\tape2' MIRROR TO TAPE = '\\.\tape3' WITH FORMAT, MEDIANAME = 'AdventureWorks2008R2Set0' |
F. 创建和备份到多簇镜像介质集
下面的示例将创建镜像介质集,其中每个镜像包含两个介质簇。然后将 AdventureWorks2008R2 数据库备份到这两个镜像中。
复制代码 | |
---|---|
BACKUP DATABASE AdventureWorks2008R2 TO TAPE = '\\.\tape0', TAPE = '\\.\tape1' MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3' WITH FORMAT, MEDIANAME = 'AdventureWorks2008R2Set1' |
G. 备份到现有镜像介质集
下面的示例将备份集追加到在前面的示例中创建的介质集上。
复制代码 | |
---|---|
BACKUP LOG AdventureWorks2008R2 TO TAPE = '\\.\tape0', TAPE = '\\.\tape1' MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3' WITH NOINIT, MEDIANAME = 'AdventureWorks2008R2Set1' |
注意: |
---|
为清楚起见,此处显示默认的 NOINIT。
|
H. 在新的介质集中创建压缩备份
下面的示例格式化介质,并创建新的介质集,然后对 AdventureWorks2008R2 数据库执行压缩完整备份。
复制代码 | |
---|---|
BACKUP DATABASE AdventureWorks2008R2 TO DISK='Z:\SQLServerBackups\AdvWorksData.bak' WITH FORMAT, COMPRESSION |
白发三千丈