文档首页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


7.8.2.1 在 Windows 命令行启动多个 MySQL 实例

从命令行手动启动单个 MySQL 服务器的过程在 第 2.3.3.6 节,“从 Windows 命令行启动 MySQL” 中描述。要以这种方式启动多个服务器,您可以在命令行或选项文件中指定相应的选项。将选项放在选项文件中更方便,但必须确保每个服务器都获得自己的选项集。为此,请为每个服务器创建一个选项文件,并在运行服务器时使用 --defaults-file 选项告诉服务器文件名。

假设您想在一个端口上运行一个 mysqld 实例 3307,数据目录为 C:\mydata1,另一个实例在端口上运行 3308,数据目录为 C:\mydata2。请使用以下步骤

  1. 确保每个数据目录都存在,包括它自己的包含授权表的 mysql 数据库副本。

  2. 创建两个选项文件。例如,创建一个名为 C:\my-opts1.cnf 的文件,内容如下

    [mysqld]
    datadir = C:/mydata1
    port = 3307

    创建一个名为 C:\my-opts2.cnf 的第二个文件,内容如下

    [mysqld]
    datadir = C:/mydata2
    port = 3308
  3. 使用 --defaults-file 选项以自己的选项文件启动每个服务器

    C:\> C:\mysql\bin\mysqld --defaults-file=C:\my-opts1.cnf
    C:\> C:\mysql\bin\mysqld --defaults-file=C:\my-opts2.cnf

    每个服务器都在前台启动(直到服务器稍后退出之前不会出现新提示符),因此您需要在单独的控制台窗口中发出这两个命令。

要关闭服务器,请使用相应的端口号连接到每个服务器

C:\> C:\mysql\bin\mysqladmin --port=3307 --host=127.0.0.1 --user=root --password shutdown
C:\> C:\mysql\bin\mysqladmin --port=3308 --host=127.0.0.1 --user=root --password shutdown

如前所述配置的服务器允许客户端通过 TCP/IP 连接。如果您的 Windows 版本支持命名管道,并且您还想允许命名管道连接,请指定启用命名管道并指定其名称的选项。每个支持命名管道连接的服务器都必须使用唯一的管道名称。例如,C:\my-opts1.cnf 文件可以这样写

[mysqld]
datadir = C:/mydata1
port = 3307
enable-named-pipe
socket = mypipe1

对第二个服务器的 C:\my-opts2.cnf 进行类似修改。然后按照前面描述的方式启动服务器。

对于要允许共享内存连接的服务器,也适用类似的过程。通过使用启用了 shared_memory 系统变量的选项启动服务器来启用此类连接,并通过设置 shared_memory_base_name 系统变量为每个服务器指定唯一的共享内存名称。