只有mdf文件,怎么恢复SQLSERVER数据库?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了只有mdf文件,怎么恢复SQLSERVER数据库?相关的知识,希望对你有一定的参考价值。
1、开启数据库2、从企业管理器,建一个同名的数据库
3、停止sql
server
4、用原mdf文件覆盖新建库的数据库文件
5、重启sql
server(这时数据库应该是置疑)
6、修改服务器设置:允许对系统目录进行直接修改
sp_configure
'allow
updates',1
reconfigure
with
override
7、将数据库置为紧急状态:
update
master.dbo.sysdatabases
set
status
=
32768
where
name
=
'数据库名'
8、删除新的ldf文件,重建日志:
dbcc
rebuild_log('数据库名',
'f:\数据库名_log_new.ldf')--假设把新日志在f盘
9、update
master.dbo.sysdatabases
set
status
=
16
where
name
=
'数据库名'
10、修改服务器设置:取消
允许对系统目录进行直接修改
sp_configure
'allow
updates',
0
reconfigure
with
override
11、再使用检查工具修复错误
use
[数据库名]
alter
database
[数据库名]
set
single_user
with
rollback
immediate
dbcc
checkdb
('数据库名',REPAIR_ALLOW_DATA_LOSS)
alter
database
[数据库名]
set
multi_user
执行完毕之后,如果还有错误,重复执行11,直到没有错误为止。 参考技术A 先将mdf和ldf文件拷贝到sql
server的安装目录下的一个data目录下。
然后打开企业管理器,右键选择附加数据库,选择这2个文件的地址就OK了。 参考技术B 有的时候,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
的操作的反操作,不过直接使用也还是可以成功的。 参考技术C 哈哈,和我一样~不过我比较幸运,我用数据恢复软件把数据里的备份文件给恢复了!呵呵~
在sqlserver中如何导入.db数据库文件
请问在sqlserver中如何导入.db数据库文件(以便以后在sqlserver中使用).具体步骤是什么?谢谢了.
那我怎么才可以使用这个.db数据库文件呢? 或者说怎么来打开它.
只有.mdf文件才能被导入
*.db是paradox的文件形式,它可以在VB的VisData或Borland公司的BDE(Borland Database Engine)中打开 参考技术A mdf和ldf,bak文件可以导入,前一个用附加后一个用还原 参考技术B 有.db的吗 ?好象是.mdf吧。
以上是关于只有mdf文件,怎么恢复SQLSERVER数据库?的主要内容,如果未能解决你的问题,请参考以下文章