WIN10上装多个MySQL实例

本文介绍如何在Windows 10环境下安装多个MySQL实例,并详细说明了从资料准备到服务设置的全过程,包括如何修改配置文件、设置系统服务及注册表等关键步骤。

内容转载与该博客

背景:我本机Win10已经装好了一个MySQL实例:安装路径(默认)是C:\Program Files (x86)\MySQL;

1资料准备
1.1复制文件夹MySQL,然后重命名

这里写图片描述

1.2复制data

查看C:\Program Files (x86)\MySQL下的my.in文件,可以查看MySQL服务启动的端口,数据的存储路径

这里写图片描述
这里写图片描述

打开C:/ProgramData/MySQL/MySQL Server 5.1,将MySQL Server 5.1复制两份,然后重命名
这里写图片描述

2.修改启动my.ini文件中的port,basedir,datadir

修改C:\Program Files (x86)\MySQL\MySQL Server 5.1 - 3307下的my.ini文件:启动端口改为3307;数据存储路径改为上一步骤对应的路径:C:\ProgramData\MySQL\MySQL Server 5.1 - 3307\data;根路径basedir
这里写图片描述

C:\Program Files (x86)\MySQL\MySQL Server 5.1 - 3307下的my.ini文件也做一样的修改:修改启动端口位3308;数据存储路径改为上一步骤对应的路径:C:\ProgramData\MySQL\MySQL Server 5.1 - 3308\data;根路径basedir
这里写图片描述

3.设置Mysql为系统服务

进入MySQL Server 5.1 - 3307目录中的bin目录下 运行命令 mysqld –install MySQL-l3307 (服务名 自定义即可)
这里写图片描述

对MySQL Server 5.1 - 3308一样的操作
这里写图片描述


4.检查注册表:

运行regedit打开注册表找到

HEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/

找到MySQL-3307 和MySQL-3308 查看ImagePath的值是否是对应的路径,
如果ImagePath的值是

C:\Program Files (x86)\MySQL\MySQL Server 5.1 - 3307\bin\mysqld” MySQL-3307

则配置成功。

我查看我的注册表的时候ImagePath的值为:

“C:\Program Files(x86)\MySQL\MySQL Server 5.1 \bin\mysqld” MySQL-3307;

(没有匹配自己的安装路径);因为我在安装时该参数值默认为第一个MySQL实例的路径,这时候手动修改ImagePath的值即可。


5.启动服务:
5.1.通过命令启动:net start MySQL-3307

这里写图片描述

5.2.或者起任务管理器中找到该服务,手动启动

这里写图片描述


6遇到的问题:
6.1发生系统错误 193。

C:\Users\asus>net start MySQL-3307
发生系统错误 193。
* 不是有效的 Win32 应用程序。

解决办法:bin目录下有个mysqld的空文件,删除即可。
这里写图片描述

### 配置多个 MySQL 实例于同一 Windows 主机 #### 选择不同的端口和服务名称 为了防止冲突,在同一台计算机上运行多个 MySQL 实例时,每个实例都应分配唯一的 TCP/IP 端口号以及服务名。默认情况下,MySQL 使用3306作为通信端口;因此第二个实例可以设置为其他未被占用的端口,比如3307。 #### 修改配置文件 对于每一个新的 MySQL 实例都需要创建独立的 my.ini 或者 my.cnf 文件来指定特定参数。这些参数至少应该包括但不限于数据目录路径、日志位置和端口号等重要选项[^1]。 ```ini # Example configuration for second instance (my_second_instance.ini) [mysqld] port=3307 basedir="C:/Program Files/MySQL/SecondInstance/" datadir=C:/Data/MySQL/Data2/ socket=mysql.sock log-error=C:/Data/MySQL/ErrorLog2/error.log pid-file=C:/Data/MySQL/PIDFile/pidfile.pid ``` #### 安装并初始化新实例 通过命令行工具执行 `mysqld --install` 来注册一个新的 Windows 服务,并使用 `--initialize-insecure` 参数完成数据库系统的初次设定过程[^4]: ```batch "C:\Program Files\MySQL\SecondInstance\bin\mysqld.exe" --defaults-file="C:\PathToConfig\my_second_instance.ini" --install SecondServiceName --initialize-insecure ``` #### 启动与停止服务 利用 Windows 的服务管理器 (`services.msc`) 或者命令提示符中的 net start 和 net stop 命令来进行各个实例的服务控制操作。确保每次只针对具体命名的服务采取行动以避免误操作影响到其它正在工作的 MySQL 进程[^2]。 #### 数据库连接测试 当所有准备工作完成后,可以通过命令行客户端或其他图形界面应用程序尝试建立同各不同端口上的 MySQL Server 的链接关系,验证其正常工作状况: ```sql mysql -h localhost -P 3307 -u root -p ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值