由于 LUN 不可用,SQL Server 无法启动

由于 LUN 不可用,SQL Server 无法启动

我有一个独立的 SQL 2005 服务器(在 Windows Server 2003 上),它有 2 个 LUN 驱动器用于数据文件和事务日志。

当服务器重新启动时,SQL Server 服务在 LUN 驱动器可用之前启动,因此会出现错误并在另一个驱动器上创建新的日志文件。

我读过一些文章,比如这个:

SQL 开发文章

向您展示如何使用 Cluster Manager 执行此操作,但我的盒子没有集群。有人知道如何设置此依赖关系吗?

答案1

我不确定这是否可行,因为我没有遇到同样问题的机器,但您可以将 SQL Server 服务配置为在磁盘驱动程序报告其在线之前不启动。

我在此讨论如何设置此注册表项常问问题。磁盘驱动程序称为“磁盘”。如果此方法无效,您需要从注册表中删除该设置。

答案2

这是一篇旧帖子,但除了 DependOnService 注册表调整之外,另一种可能性是将 Services.msc 中的 MSSQL 服务启动类型从“自动”更改为“自动(延迟启动)”;该选项应导致服务等待其他自动服务启动后再启动“延迟”服务。这应该在 Windows 启动后一两分钟完成。依赖于 MSSQL 的其他服务也需要设置为延迟启动(即 SQL Server Agent)。

我相信操作系统必须是 Windows Server 2008 或更高版本才可使用该选项。

警告:我本人实际上还没有尝试过。

答案3

您是否在使用 Microsoft iSCSI 软件启动器?定义的 iSCSI 驱动器是动态的吗?

已知问题在于软件 iSCSI 启动器无法在启动时正确启动动态驱动器。我的解决方法是将驱动器重新定义为“基本”驱动器。当然,更改此设置意味着您将丢失驱动器上的所有数据,并且必须重新格式化。

本网站有一个可能更有用的解决方法。

相关内容