如何重建数据库日志文件
问题现象:在进行数据库物理文件进行附加时提示ldf文件不匹配,如下图所示,这个时候就需要重建日志看看能不能将数据还原导数据库里面。
解决方法:1、新建数据库名称和损坏账套物理文件mdf名称一致。新建数据库物理文件路径可以修改,默认是数据库路径。
2、停止数据库服务,将对应原来的物理文件复制,在新建数据库生成的路径里面把新建生成的物理文件覆盖替换,替换后将ldf文件删除,删除ldf文件后再重启数据库服务
3、再数据库里面执行下面语句,语句对于的数据库名称为对于之前新建数据库名称,路径改为对应新建数据库里面选择的保存路径,语句一句一句执行即可。
语句如下:
–1、把客户的数据库服务停止,把物理文件备份出来一份,然后把后缀名为ldf删除,然后把数据库服务启动
–2、把UFTData953875_000002修改成真实数据库名称,把C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA,修改成真实的路径,把语句全部复制到management studio中,用鼠标选择一行执行一行
use master
alter database UFTData953875_000002 set EMERGENCY –如果提示报错,可以直接执行下一行语句
alter database UFTData953875_000002 set single_user with rollback IMMEDIATE
alter database UFTData953875_000002 Rebuild Log on (name = MyDB_log, filename = ‘C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\UFTData953875_000002_log.ldf’)
dbcc checkdb(‘UFTData953875_000002’,REPAIR_REBUILD)
alTER database UFTData953875_000002 set Multi_USER
4、执行完成即可打开对于同名数据库,检测是否损坏进行修复