很多时候恢复出来的SQL数据库只有MDF文件且不能附加,这时就需要重新生成日志文件;
ALTER DATABASE TestDataBase SET EMERGENCY //数据库标记为 READ_ONLY,已禁用日志记录,并且仅限 sysadmin 固定服务器角色的成员进行访问。EMERGENCY 主要用于故障排除。例如,可以将由于损坏了日志文件而标记为可疑的数据库设置为 EMERGENCY 状态。这样,系统管理员便可对数据库进行只读访问。只有 sysadmin 固定服务器角色的成员才可以将数据库设置为 EMERGENCY 状态。 ALTER DATABASE TestDataBase SET SINGLE_USER //将目标数据库置为单用户状态 ALTER DATABASE TestDataBase REBUILD LOG ON (NAME=dbname_log, FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDataBase.ldf') //重新生成日志文件 DBCC CHECKDB('TestDataBase', REPAIR_ALLOW_DATA_LOSS) //检查数据库 ALTER DATABASE TestDataBase SET MULTI_USER //将数据库设置为多用户 ALTER DATABASE TestDataBase SET ONLINE //数据库联机
关于ALTER DATABASE更多参数的使用可以查阅MSDN https://msdn.microsoft.com/zh-cn/library/bb522682%28v=sql.105%29.aspx
转载请注明:成都千喜数据恢复中心 » 重新生成SQL Server日志文件