如何启动 SQL Server 实例 (sqlservr.exe)

如果 SQL Server 数据库引擎未启动,则会执行一个故障排除步骤,尝试从命令提示符启动数据库引擎。本主题说明了如何启动数据库引擎实例。

注意注意

为了进行故障排除,SQL Server 应当只从命令提示符启动。若要启动 SQL Server 数据库引擎作为常规使用,请参阅如何启动 SQL Server 实例(SQL Server 配置管理器)

正常的 SQL Server 启动是一项复杂的活动,需要正确定位的 SQL Server 文件、为 SQL Server 和 Microsoft Windows 服务配置的注册表设置以及 SQL Server 服务使用域帐户时的正确文件和注册表权限。因此,排除故障的一个常用步骤是通过简化其环境来确定 SQL Server 是否能够在理想条件下启动。通常,故障排除过程开始时会显示以下问题:“使用‘本地管理员’组中的帐户,而不使用 Windows 服务控制管理器,SQL Server 是否能够启动?”答案“是”表示问题可能与服务控制管理器有关,也可能与分配给 SQL Server 服务正在尝试使用的帐户的权限有关。答案“否”可能显示一个以前使用服务控制管理器时未显示的错误消息,并可能表示 SQL Server 文件或注册表设置存在问题。

注意事项注意

除了测试是否能够启动 SQL Server,请不要从命令行运行 SQL Server。SQL Server 从命令行启动后执行维护操作可能会导致以后发生错误。例如,如果您以管理员身份登录,并创建新数据库或更改数据文件位置,则以后以 SQL Server 服务的正常帐户身份运行时,SQL Server 将可能无法访问它。

从命令行运行 SQL Server 时,请考虑以下限制:

  • 最小化命令提示符窗口将导致 Windows 删除 SQL Server 中的几乎所有资源。这很正常,因为 SQL Server 并没有设计为以该方式操作。

  • SQL Server 在用户的安全上下文中运行,而不是在安装期间分配用来运行 SQL Server 的帐户的安全上下文中运行。

  • 所有系统消息都将显示在用来启动 SQL Server 实例的窗口中。

  • 不能使用 SQL Server Management Studio、SQL Server 配置管理器、控制面板中的“服务”应用程序或者任何 net 命令(例如,net startnet pausenet continuenet stop)来暂停、停止或恢复作为 Microsoft Windows 服务的 SQL Server 实例。

  • 在注销 Windows 之前,必须关闭 SQL Server 实例。

  • 您键入的任何命令提示符选项都优先于由 SQL Server 安装程序写入 Windows 注册表中的默认命令提示符选项。

  • SQL Server 配置管理器和 SQL Server Management Studio 显示该服务已停止。

启动正确的 SQL Server 实例

默认情况下,sqlservr.exe 位于 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn。如果安装了 SQL Server 的命名实例,则 sqlservr.exe 的另一个副本将位于如下目录中:C:\Program Files\Microsoft SQL Server\MSSQL10.<实例名>\MSSQL\binn。您可以使用一个实例的 sqlservr.exe 来启动另一个 SQL Server 实例,但 SQL Server 同时会启动错误的实例版本(包括 Service Pack),并可能导致意外结果。若要避免出现这种问题,请在启动 sqlservr.exe 之前使用 MS-DOS 更改目录命令 (cd) 移动到正确的目录,如下面的示例所示:

cd \Program Files\Microsoft SQL Server\MSSQL.MSSQLSERVER\MSSQL\Binn

从命令提示符启动 SQL Server 默认实例

  • 从命令提示符输入以下命令:

    sqlservr.exe
    

从命令提示符启动 SQL Server 命名实例

  • 在命令提示符下,输入以下命令并将 <instancename> 替换为要启动的实例名:

    sqlservr.exe -s <instancename>
    

从命令提示符用单用户模式启动 SQL Server 默认实例

  • 从命令提示符输入以下命令:

    sqlservr.exe -m
    

    在您不希望任何其他用户连接到 SQL Server 的情况下执行紧急维护时,单用户模式可能非常有用,但任何用户均可成为单用户,包括 SQL Server 代理服务。

从命令提示符用单用户模式启动 SQL Server 命名实例

  • 从命令提示符输入以下命令:

    sqlservr.exe -m -s <instancename>
    

用最小配置启动 SQL Server 默认实例

  • 从命令提示符输入以下命令:

    sqlservr.exe -f
    

用最小配置启动 SQL Server 命名实例

  • 从命令提示符输入以下命令:

    sqlservr.exe -f -s <instancename>