U8 2023 年 3 月 23 日

【U8】U8如何重建数据库日志文件

【U8】U8如何重建数据库日志文件

如何重建数据库日志文件

**问题现象:**在进行数据库物理文件进行附加时提示ldf文件不匹配,如下图所示,这个时候就需要重建日志看看能不能将数据还原导数据库里面。
image-20230323163439426
image-20230323163439426
**解决方法:**1、新建数据库名称和损坏账套物理文件mdf名称一致。新建数据库物理文件路径可以修改,默认是数据库路径。
image-20230323163445302
image-20230323163445302
image-20230323163451520
image-20230323163451520
2、停止数据库服务,将对应原来的物理文件复制,在新建数据库生成的路径里面把新建生成的物理文件覆盖替换,替换后将ldf文件删除,删除ldf文件后再重启数据库服务
image-20230323163459098
image-20230323163459098
image-20230323163514783
image-20230323163514783
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
image-20230323163543981
image-20230323163543981
image-20230323163536964
image-20230323163536964

4、执行完成即可打开对于同名数据库,检测是否损坏进行修复