备份与恢复
--1.在本地硬盘上创建一个备份设备
USE master
GO
EXEC sp_addumpdevice 'disk','mybackupfile'
'E:\data\mybackupfile.bak'
--2.在磁盘上创建一个备份设备
EXEC sp_addumpdevice 'tape','tapebackupfile','\\.\tape0'
--3.在磁盘上创建一个临时备份设备,用来备份数据库PXSCJ
USE master
GO
BACKUP DATABASE PXSCJ TO DISK='E:\data\tmppxscj.bak'
--4.使用逻辑名test1在E盘中创建一个明明的备份设备,并将数据库pxscj完全备份到该设备
USE master
GO
EXEC sp_addumpdevice 'disk','test1','E:\data\test1.bak'
BACKUP DATABASE PXSCJ TO test1
--备份并覆盖设备中原有内容
BACKUP DATABASE PXSCJ TO test1 WITH INIT
--备份但是不覆盖,执行追加的完全数据库备份
BACKUP DATABASE PXSCJ TO test1 NOINIT
--5.将数据库pxscj备份到多个设备
USE master
GO
EXEC sp_addumpdevice 'disk','test2','E:\data\test2.bak'
EXEC sp_addumpdevice 'disk','test3','E:\data\test3.bak'
BACKUP DATABASE PXSCJ TO test1,,test3
WITH NAME='pxscjjbk'
--6.创建临时备份设备,并在其设备上进行差异备份
BACKUP DATABASE PXSCJ TO
DISK ='E:\data\pxscjjbk.bak' WITH DIFFERENTIAL
--7.设TT数据库有个数据文件t1和t2,食物日志存储在文件tlog中。
--将文件t1备份到备份设备t1backup中,将事务日志文件备份得到tbackuplog中。
EXEC sp_addumpdevice 'disk','t1backup','E:\data\t1backup.bak'
EXEC sp_addumpdevice 'disk','tbackuplog','E:\data\tbackuplog.bak'
GO
BACKUP DATABASE TT
FILE='t1' TO t1backup
BACKUP LOG TT TO tbackuplog
--8.创建一个命名的备份设备PXSCJLOGGBK,并备份PXSCJ数据库的事务日志。
USE master
GO
EXEC sp_addumpdevice 'disk','PXSCJLOGGBK','E:\data\testlog.bak'
BACKUP LOG PXSCJ TO PXSCJLOGGBK
--9.使用RESTORE语句从一个已存在的命名备份介质PXSCJBK1中回复整个数据库PXSCJ
--首先创建备份设备PXSCJBK1
USE master
GO
EXEC sp_addumpdevice 'disk','PXSCJBK1'
'E:\data\PXSCJBK1.bak'
--使用BACKUP命令对PXSCJ数据完全备份:
BACKUP DATABASE PXSCJ TO PXSCJBK1
--接着,在回复数据之前,用户可以对PXSCJ数据库做一些修改,例如,删除其中一个表,
--以便确认是否恢复了数据库。恢复语句如下:
RESTORE DATABASE PXSCJ
FROM PXSCJBK1
WITH FILE=1,REPLACE
--then 恢复日志
RESTORE LOG PXSCJ
FROM PXSCJBK1
--10.创建PXSCJ数据库快照,并将数据库恢复到创建该快照事的状态
--首先,创建数据库快照
CREATE DATABASE PXSCJ_1
ON
(
NAME=PXSCJ,
FILENAME='E:\data\PXSCJ_1.mdf'
)
AS SNAPSHOT OF PXSCJ
GO
--接着对数据库做一些修改,以确定数据库是否恢复。恢复语句如下:
RESTORE DATABASE PXSCJ
FROM DATABASE_SNAPSHOT='PXSCJ_1'

浙公网安备 33010602011771号