【发布时间】:2016-04-25 22:19:13
【问题描述】:
我已经在 2 个 SQL 2014 服务器之间设置了事务日志传送,一切似乎都设置正确,但是当恢复发生时,如果 .trn 非常小,例如 7k,它似乎会失败。
不确定这是否与它有任何关系,但它是唯一不同的。
这里是恢复作业的日志。
日期 25/04/2016 22:59:24 记录作业历史记录 (LSRestore_IRIS_WebStock)
步骤 ID 1 服务器 HERA 作业名称 LSRestore_IRIS_WebStock 步骤 名称 日志传送恢复日志作业步骤。时长 00:00:04 Sql 严重性 0 Sql 消息 ID 0 操作员已通过电子邮件发送操作员网络发送
已尝试操作员分页重试 0消息 2016-04-25 22:59:28.71 错误:无法应用日志备份 文件“E:\ShippingLogs\WebStock\WebStock_20160425033000.trn”到 二级数据库 'WebStock'。(Microsoft.SqlServer.Management.LogShipping)2016-04-25 22:59:28.71 错误:处理日志时出错 数据库'WebStock'。如果可能,从备份中恢复。如果备份是 不可用,可能需要重建日志。一个错误 恢复期间发生,阻止数据库“WebStock”(12:0) 从重新启动。诊断恢复错误并修复它们,或恢复 来自已知的良好备份。如果错误没有得到纠正或预期, 联系技术支持。
RESTORE LOG 异常终止。 为数据库“WebStock”处理了 0 页,文件 1 上的文件“WebStock”。 为数据库“WebStock”、文件“WebStock_log”处理了 1 页 1.(.Net SqlClient 数据提供者)2016-04-25 22:59:28.71 错误:无法记录历史记录/错误 消息。(Microsoft.SqlServer.Management.LogShipping)2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用 联系。连接的当前状态为关闭。(System.Data) 2016-04-25 22:59:28.73 跳过日志备份文件 'E:\ShippingLogs\WebStock\WebStock_20160425033000.trn' 用于辅助 数据库“WebStock”,因为无法验证文件。 2016-04-25 22:59:28.73 错误:无法记录历史记录/错误 消息。(Microsoft.SqlServer.Management.LogShipping)2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用 联系。连接的当前状态为关闭。(System.Data) 2016-04-25 22:59:28.73 错误:恢复时出错 数据库访问模式。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteScalar 需要打开和 可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 错误:不能 记录历史记录/错误消息。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 错误:不能 应用日志备份文件 'E:\ShippingLogs\WebStock\WebStock_20160425034500.trn' 到二级 数据库“WebStock”。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开和 可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 错误:不能 记录历史记录/错误消息。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 跳过日志备份 文件“E:\ShippingLogs\WebStock\WebStock_20160425034500.trn” 辅助数据库“WebStock”,因为无法验证该文件。 2016-04-25 22:59:28.73 错误:无法记录历史记录/错误 消息。(Microsoft.SqlServer.Management.LogShipping)2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用 联系。连接的当前状态为关闭。(System.Data) 2016-04-25 22:59:28.73 错误:恢复时出错 数据库访问模式。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteScalar 需要打开和 可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 错误:不能 记录历史记录/错误消息。(Microsoft.SqlServer.Management.LogShipping) 2016-04-25 22:59:28.73 错误:ExecuteNonQuery 需要打开且可用的连接。连接的当前状态是 关闭。(System.Data)2016-04-25 22:59:28.73 错误:不能 应用日志备份文件 'E:\ShippingLogs\WebStock\WebStock_20160425040000.trn' 到二级 数据库'WebStock'。(Microsoft.SqlServer.Management.LogShipp
如果我删除该日志并再次运行还原,它会继续工作,直到找到另一个非常小的日志。
如果日志为空,恢复会失败吗?
【问题讨论】:
-
你使用的恢复模式是什么,你也可以分享这个命令的输出(
RESTORE VERIFYONLY FROM DISK = 'your log file ';)你得到这个错误的日志(Could not apply log backup file 'E:\ShippingLogs\WebStock\WebStock_20160425033000.trn) -
我们向 Microsoft 提出了有关此问题的票证,并被建议应用累积更新。 support.microsoft.com/en-au/help/4058700/… 我们将在 2014 年申请 SP3。
标签: sql-server database sql-server-2014 log-shipping