荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: baty (新一代懒人), 信区: Database
标  题: 把拷贝过的SQL Server 7数据库恢复的正确方?
发信站: BBS 荔园晨风站 (Thu Nov 16 16:17:41 2000), 站内信件

在SQL Server 7中由于MS重新设计了数据库文件的存储方式,取消了
新建设备再建数据库这一繁琐的过程。新的存储格式,一个数据库包括
两个文件,mdf数据库文件和ldf日志文件。所以我们在重装机器备份
时可以把你要备份的数据库的这两个文件拷贝出来,重新安装之后再
恢复。

  在SQL Server中提供了这种恢复方式的存储过程。

1.sp_attach_db [@dbname =] 'dbname',[@filename1 =]
'filename_n'

给系统添加一个数据库,在dbname指定数据库名称,filename_n指定
数据库的文件和日志文件。比如我有一个voogiya的库,停止SQL
Server服务备份voogiya_data.mdf,voogiya_log.ldf,启动SQL
server,删除掉这个库,然后再把这两上文件拷到sql server DATA
目录中,在Query Analyzer中执行如下语句:

EXEC sp_attach_db @dbname = N'voogiya',

@filename1 = N'd:\mssql7\data\voogiya_data.mdf',

@filename2 = N'd:\mssql7\data\voogiya_log.ldf'

就会把这个库加入到SQL Server Group中.

2.sp_attach_single_file_db [@dbname =] 'dbname',

[@physname =] 'physical_name'

这个命令和上面的功能一样,在physical_name中只要写上据库的
物理文件名就可以了,日志文件SQL server会重新建立。这个存储
过程的运行要先执行下面的存储过程:

sp_detach_db @dbname = 'dbname'

同样以上面的为例:

EXEC sp_detach_db @dbname = 'voogiya'

EXEC sp_attach_single_file_db @dbname = 'voogiya',

@physname = 'd:\mssql7\data\voogiya_data.mdf'



要注意执行以上存储过程的用户要在sysadmin中.


以上方法在windows Nt 4.0,service pack5,sql server 7.0上
运行通过。

--
☆ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: bbs@192.168.18.238]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店