当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 拷贝的SQLServer7数据库的恢复方法

MSSQL
SQL Server中常使用的DBCC命令
Windows2003服务器安装设置教程:MSSQL安全篇
MySql教程:两个表之间更新数据
asp.net网站开发中使用Sqlite嵌入式数据库
Microsoft SQL Server SA权限安全
SQL Server帐号孤立的问题解决
SQL server教程:SQL语法
修复MSSQLSERVER数据库置疑的步骤
安全基础知识 细说暴库的原理与方法
MSSQL和Mysql自定义函数与存储过程
MSSQL数据库不能手动创建新的连接
ASP连接MSSQL的错误: 拒绝访问
MSSQL数据库镜像在Oracle中是如何实现的
写给菜鸟站长:解读你的茫然
教你创建动态MSSQL数据库表
MSSQL下用UNION和系统表配合猜表名和字段名深度注入
Public权限下的列目录
phpBB 3.0.6 RC1简单介绍和下载
SQL Server:SQL中如何正确认识触发器
SQL Server:如何正确理解存储过程

MSSQL 中的 拷贝的SQLServer7数据库的恢复方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 133 ::
收藏到网摘: n/a

在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:mssql7datavoogiya_data.mdf',@filename2 = N'd:mssql7datavoogiya_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:mssql7datavoogiya_data.mdf'

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

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