### 2.3.5 Microsoft Windows MySQL服务器安装故障排除

首次安装和运行MySQL时，可能会遇到某些错误，导致MySQL服务器无法启动。本节帮助您诊断和纠正其中一些错误。

解决服务器问题时，您的第一个资源是[错误日志](glossary.html#glos_error_log).MySQL服务器使用错误日志记录与阻止服务器启动的错误相关的信息。错误日志位于[数据目录](glossary.html#glos_data_directory)在你的`我的伊尼`文件默认的数据目录位置是`C:\Program Files\MySQL\MySQL Server 8.0\data`或`C:\ProgramData\Mysql`在Windows 7和Windows Server 2008上。这个`C:\ProgramData`默认情况下，目录是隐藏的。您需要更改文件夹选项以查看目录和内容。有关错误日志和了解内容的更多信息，请参阅[第5.4.2节“错误日志”](error-log.html).

有关可能错误的信息，请参阅MySQL服务启动时显示的控制台消息。使用**SC启动*`mysqld_服务_名称`***或**净启动*`mysqld_服务_名称`***安装后从命令行执行的命令[**mysqld**](mysqld.html)作为服务，查看有关启动MySQL服务器作为服务的任何错误消息。看见[第2.3.4.8节，“将MySQL作为Windows服务启动”](windows-start-service.html).

以下示例显示了在安装MySQL并首次启动服务器时可能遇到的其他常见错误消息：

-   如果MySQL服务器找不到`mysql`特权数据库或其他关键文件，它会显示以下消息：

    ```
    System error 1067 has occurred.
    Fatal error: Can't open and lock privilege tables:
    Table 'mysql.user' doesn't exist
    ```

    当MySQL基本目录或数据目录安装在不同于默认位置的位置时，通常会出现这些消息(`C:\Program Files\MySQL\MySQL Server 8.0`和`C:\Program Files\MySQL\MySQL Server 8.0\data`分别为）。

    当MySQL升级并安装到新位置时，可能会出现这种情况，但配置文件不会更新以反映新位置。此外，新旧配置文件可能会发生冲突。升级MySQL时，请确保删除或重命名任何旧的配置文件。

    如果您已将MySQL安装到除`C:\Program Files\MySQL\MySQL Server 8.0`，通过使用配置确保MySQL服务器知道这一点(`我的伊尼`)档案。把`我的伊尼`Windows目录中的文件，通常是`C:\WINDOWS`.根据`温迪尔`环境变量，从命令提示符下发出以下命令：

    ```
    C:\> echo %WINDIR%
    ```

    可以使用任何文本编辑器（如记事本）创建或修改选项文件。例如，如果MySQL安装在`E:\mysql`数据目录是`D:\MySQLdata`，您可以创建选项文件并设置`[mysqld]`节来指定`basedir`和`数据目录`选项：

    ```
    [mysqld]
    # set basedir to your installation path
    basedir=E:/mysql
    # set datadir to the location of your data directory
    datadir=D:/MySQLdata
    ```

    Microsoft Windows路径名在选项文件中使用（正向）斜杠而不是反斜杠指定。如果确实使用反斜杠，请将其加倍：

    ```
    [mysqld]
    # set basedir to your installation path
    basedir=C:\\Program Files\\MySQL\\MySQL Server 8.0
    # set datadir to the location of your data directory
    datadir=D:\\MySQLdata
    ```

    选项文件值中使用反斜杠的规则如中所示[第4.2.2.2节，“使用选项文件”](option-files.html).

    如果你改变主意`数据目录`在MySQL配置文件中，必须先移动现有MySQL数据目录的内容，然后才能重新启动MySQL服务器。

    看见[第2.3.4.2节，“创建选项文件”](windows-create-option-file.html).

-   如果您重新安装或升级MySQL而没有先停止并删除现有的MySQL服务，并使用MySQL安装程序安装MySQL，您可能会看到以下错误：

    ```
    Error: Cannot create Windows service for MySql. Error: 0
    ```

    当配置向导尝试安装服务并找到同名的现有服务时，就会发生这种情况。

    解决这个问题的一个方法是选择一个服务名称，而不是`mysql`使用配置向导时。这样可以正确安装新服务，但保留过时的服务。虽然这是无害的，但最好删除不再使用的旧服务。

    永久移除旧的`mysql`服务，以具有管理权限的用户身份在命令行上执行以下命令：

    ```
    C:\> SC DELETE mysql
    [SC] DeleteService SUCCESS
    ```

    如果`联合国安全理事会`工具不适用于您的Windows版本，请下载`德尔斯夫`效用来自<http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/delsrv-o.asp>使用`delsrv mysql`语法。
