恢复MDF存在LDF不存在的数据库
问题原因:
MDF文件保存完好(已拷出来),LDF已丢失。使用:
EXEC sp_attach_single_file_db @dbname = 'TyBusiness',
@physname = 'E:/Help/TyBusiness.MDF'
报如下错误:
未能打开新数据库 'TyBusiness'。CREATE DATABASE 将终止。
设备激活错误。物理文件名
'd:/Program Files/Microsoft SQL Server/MSSQL/TyBusiness_log.ldf' 可能有误。
解决办法:
1、先建一个与你要恢复的数据库名称一样的数据库。
2、停止sql server,把你的数据库替换这个数据库。
3、重起sql server,把数据库设成紧急状态(在查询分析器里面进行):
sp_configure 'allow',1
reconfigure with override
update sysdatabases set status=32768 where name='yourdata'
4、重建日志文件
dbcc rebuild_log('yourdata','your data path/newdata_log.ldf')
5、取消紧急模式
update sysdatabases set status=0 where name='yourdata'
restore sysdatabases yourdata with recovery
sp_configure 'allow',0
reconfigure with override
6、重起sql server
7、OK!
问题原因:
MDF文件保存完好(已拷出来),LDF已丢失。使用:
EXEC sp_attach_single_file_db @dbname = 'TyBusiness',
@physname = 'E:/Help/TyBusiness.MDF'
报如下错误:
未能打开新数据库 'TyBusiness'。CREATE DATABASE 将终止。
设备激活错误。物理文件名
'd:/Program Files/Microsoft SQL Server/MSSQL/TyBusiness_log.ldf' 可能有误。
解决办法:
1、先建一个与你要恢复的数据库名称一样的数据库。
2、停止sql server,把你的数据库替换这个数据库。
3、重起sql server,把数据库设成紧急状态(在查询分析器里面进行):
sp_configure 'allow',1
reconfigure with override
update sysdatabases set status=32768 where name='yourdata'
4、重建日志文件
dbcc rebuild_log('yourdata','your data path/newdata_log.ldf')
5、取消紧急模式
update sysdatabases set status=0 where name='yourdata'
restore sysdatabases yourdata with recovery
sp_configure 'allow',0
reconfigure with override
6、重起sql server
7、OK!