解决失败的添加文件操作问题(AlwaysOn 可用性组)
在某些 AlwaysOn 可用性组部署中,文件路径在承载主副本的系统与承载辅助副本的系统之间存在差异。 如果辅助副本上不存在添加文件操作的文件路径,则添加文件操作会在主数据库上取得成功。 但添加文件操作将会导致辅助数据库挂起。 而这又会导致辅助副本进入“非同步”状态。
注意 |
---|
我们建议,如有可能,给定辅助数据库的文件路径(包括驱动器号)应该与相应的 master 数据库的路径相同。 |
问题解决方案
若要解决此问题,数据库所有者必须完成以下步骤:
从可用性组中删除辅助数据库。 有关详细信息,请参阅从可用性组中删除辅助数据库 (SQL Server)。
在现有辅助数据库上,使用 WITH NORECOVERY 和 WITH MOVE(指定将承载辅助副本的服务器实例上的文件路径)将包含添加的文件的文件组的完整副本还原到辅助数据库。 有关详细信息,请参阅将数据库还原到新位置 (SQL Server)。
备份包含对主数据库的添加文件操作的事务日志,并且使用 WITH NORECOVERY 和 WITH MOVE 手动还原辅助数据库上的日志备份。
通过使用 WITH NO RECOVERY 从主数据库还原任何其他待定日志备份,对辅助数据库进行准备以便重新联接到可用性组。
将辅助数据库重新联接到可用性组。 有关详细信息,请参阅将辅助数据库联接到可用性组 (SQL Server)。