如何在SQL Server中恢复数据
发布时间:2006-10-14 2:55:51   收集提供:gaoqian
在SQL server 中恢复数据的几种办法:

1.自然就是 backup 的 恢复方法 backup 这种方法是最安全,最可靠的方法操作起来也很简单,只要在 sql server 的 enterprise manager中选择 restore 就可以了。

用T-SQL 也可以完成:

RESTORE DATABASE test FROM DISK = ’c:\mssql7\backup\test.bak’

当然这是用的 文件恢复,如果是 设备恢复 自然也是可以的。

2.可是有的时候,SQL server 是在我们毫无准备的情况下瘫痪的,有的时候是伴随者 NT 的瘫痪而引起的,(这个时候,豆腐想 墙上 Gates 的画像有仍了几个 西红柿),怎么办呢?这个时候就只有采用 sql server 的 t-sql 中提供的系统存储过程了:

sp_atach_db

在这里举一个简单的例子:

sp_attach_db @dbname = N’pubs’,

@filename1 = N’c:\mssql7\data\pubs.mdf’,

@filename2 = N’c:\mssql7\data\pubs_log.ldf’

这种方法应该说是有很高的成功率的,不过在 实践中 豆腐听说 这样后,数据库成为只读的,那也没有办法了。如果只有 mdf 没有 ldf 文件的话,可以使用 sp_attach_single_file

sp_attach_single_file_db @dbname = ’pubs’, @physname = ’c:\mssql7\data\pubs.mdf’

这个方法本来是 用来 对 sp_deatach 的操作的反操作,不过直接使用也还是可以成功的。
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50