在学习和开发过程中有时候会用到多个MySQL数据库,比如Master-Slave集群、分库分表,开发阶段在一台机器上安装多个MySQL实例就显得方便不少。
在 MySQL教程-基础篇-1.1-Windows上安装MySQL 章节有详细讲解在Windows上用压缩包安装MySQL服务器的方法,这里以此为基础讲解在Windows上安装多个MySQL服务器的方法。
第一步:将压缩包分别解压缩到不同的目录下。
我自已在已安装好一个MySQL实例后又额外安装了3个MySQL实例,它们的路径如下:
C:Program FilesMySQLmysql2mysql-5.7.10-winx64
C:Program FilesMySQLmysql3mysql-5.7.10-winx64
C:Program FilesMySQLmysql4mysql-5.7.10-winx64
第二步:修改配置文件。
将mysql2目录下的my-default.ini重命名为my.ini,做如下配置,保证端口号和server_id不同。
第三步:初始化和安装。
以管理员身份运行cmd,进入到bin目录后执行初始化命令
mysqld --initialize --user=mysql --console
记录初始密码后执行服务安装命令
mysqld –install mysql_2
需要注意的是这里带上了参数mysql_2,MySQL官方文档里的安装命令为mysqld -install,该命令下Windows系统默认服务名为mysql,所以在多实例安装时一定要带上服务名参数,且参数值互不相同,不然在启动MySQL服务时都是同一个实例。
第四步:修改注册表。
在开始菜单输入regidit命令打开注册表,找到HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> services -> mysql_2,选中后将ImagePath参数值改成
“C:Program FilesMySQLmysql2mysql-5.7.10-winx64inmysqld” –defaults-file=”C:Program FilesMySQLmysql2mysql-5.7.10-winx64my.ini” mysql_2
将其中的路径改成你自己的安装路径即可。这一步很重要,我在安装时该参数值默认为第一个MySQL实例的路径,如果不做更改同样会出现多个MySQL实例实际上只运行一个的情况。
第五步:启动服务并修改密码。
在命令行执行命令启动该MySQL服务:
net start mysql_2
启动后进行登录,命令如下:
mysql –uroot –P3308 –p
在第二步中配置的端口号为3308,而MySQL登录命令默认连接3306端口,所以要带上参数-P3308,注意是大写P,区分表示密码的参数小写p。登录成功后按照1.1章节中的教程更改密码。
经过如上步骤后即安装好第二个MySQL实例。按照此步骤给不同的MySQL实例配置不同的端口、server_id和服务名即可在一台机器上安装多个MySQL实例。