#### 2.3.4.2 创建选项文件

如果需要在运行服务器时指定启动选项，可以在命令行中指明它们或将它们放在选项文件中。对于每次服务器启动时使用的选项，您可能会发现使用选项文件来指定 MySQL 配置最方便。在以下情况下尤其如此：

-   安装或数据目录位置不同于默认位置 (`C:\Program Files\MySQL\MySQL 服务器 8.0`和`C:\Program Files\MySQL\MySQL 服务器 8.0\data`）。

-   您需要调整服务器设置，例如内存、缓存或 InnoDB 配置信息。

    当 MySQL 服务器在 Windows 上启动时，它会在多个位置查找选项文件，例如 Windows 目录，`C：\`，以及 MySQL 安装目录（有关位置的完整列表，请参阅[第 4.2.2.2 节，“使用选项文件”](option-files.html)）。Windows 目录通常被命名为`C:\WINDOWS`.您可以从`风向`环境变量使用以下命令：


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

MySQL 首先在每个位置查找选项`我的.ini`文件，然后在`我的.cnf`文件。但是，为避免混淆，最好只使用一个文件。如果您的 PC 使用引导加载程序`C：`不是引导驱动器，您唯一的选择是使用`我的.ini`文件。无论您使用哪个选项文件，它都必须是纯文本文件。

笔记

当使用 MySQL Installer 安装 MySQL Server 时，它会创建`我的.ini`在默认位置，并且执行 MySQL 安装程序的用户被授予对这个新的完全权限`我的.ini`文件。

换句话说，确保 MySQL Server 用户有权限读取`我的.ini`文件。

您还可以使用 MySQL 发行版中包含的示例选项文件；看[第 5.1.2 节，“服务器配置默认值”](server-configuration-defaults.html).

可以使用任何文本编辑器（例如记事本）创建和修改选项文件。例如，如果 MySQL 安装在`E:\mysql`并且数据目录在`E:\我的数据\数据`，您可以创建一个选项文件，其中包含`[mysqld]`部分指定的值`基于的`和`数据目录`选项：

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

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

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

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

ZIP 存档不包括`数据`目录。要通过创建数据目录并填充 mysql 系统数据库中的表来初始化 MySQL 安装，请使用以下任一方法初始化 MySQL[`- 初始化`](server-options.html#option_mysqld_initialize)要么[`--初始化不安全`](server-options.html#option_mysqld_initialize-insecure).有关其他信息，请参阅[第 2.10.1 节，“初始化数据目录”](data-directory-initialization.html).

如果你想在不同的位置使用数据目录，你应该复制整个目录`数据`目录到新位置。例如，如果你想使用`E:\我的数据`作为数据目录，您必须做两件事：

1.  移动整个`数据`目录及其所有内容从默认位置（例如`C:\Program Files\MySQL\MySQL 服务器 8.0\data`） 到`E:\我的数据`.

2.  用一个[`--数据目录`](server-system-variables.html#sysvar_datadir)每次启动服务器时指定新数据目录位置的选项。
