目录
- 在一台Windows主机上运行两个Mysql服务器,安装步骤详解
-
- [因为演示需要两个 MySQL 服务器终端,我只有一个 3306 端口号的 MySQL 服务器,所以需要再创建一个 3307 的。](#因为演示需要两个 MySQL 服务器终端,我只有一个 3306 端口号的 MySQL 服务器,所以需要再创建一个 3307 的。)
-
- 创建一个3307端口号的MySQL服务器
-
- [1、复制 mysql 的安装目录](#1、复制 mysql 的安装目录)
- [2、修改my.ini 配置文件](#2、修改my.ini 配置文件)
- 3、命令创建第二个服务
- [4、修改这个 MySQL 服务器的密码](#4、修改这个 MySQL 服务器的密码)
- 5、查看注册表
- [6、登录两个 MySQL 服务器](#6、登录两个 MySQL 服务器)
- 7、添加环境变量
- [8、navicat 连接3307端口号的MySQL服务器](#8、navicat 连接3307端口号的MySQL服务器)
- 9、去除环境变量问题
- [10、删除 MySQL 服务器](#10、删除 MySQL 服务器)
在一台Windows主机上运行两个Mysql服务器,安装步骤详解
因为演示需要两个 MySQL 服务器终端,我只有一个 3306 端口号的 MySQL 服务器,所以需要再创建一个 3307 的。
创建一个3307端口号的MySQL服务器
1、复制 mysql 的安装目录
直接拷贝一份mysql,因为里面的data数据太多,所以我没有把data文件拷贝过去。
注意:不需要自己手动创建 data 文件夹,在后续初始化的时候会自动生成。
2、修改my.ini 配置文件
修改这四个地方
3、命令创建第二个服务
以管理员的身份打开命令行窗口,到安装目录的bin目录下,输入如下命令创建第二个 MySQL 服务
mysqld install mysql8_3307 --defaults-file="E:\install\mysql8_3307\mysql-8.0.21-winx64\my.ini"
然后输入如下命令初始化数据库:
mysqld --initialize --console
临时密码:cfva3dA#dw!u
win+ r 打开命令行窗口,输入: services.msc 打开这个服务页面,启动这个新创建的MySQL服务。
4、修改这个 MySQL 服务器的密码
输入如下命令登录MySQL服务器:
mysql -u root -p
然后输入初始密码;
再输入如下命令修改密码:
ALTER USER root@localhost IDENTIFIED BY '123456';
修改密码成功。
5、查看注册表
win + r 打开命令行窗口,输入 regedit 打开注册表编辑器
因为环境变量也没改,这里可以看出数值数据长这样。
E:\install\mysql8\mysql-8.0.21-winx64\bin\mysqld --defaults-file=E:\install\mysql8_3307\mysql-8.0.21-winx64\my.ini mysql8_3307
这里还出现mysql8,我认为应该是mysql8_3307才对。
6、登录两个 MySQL 服务器
登录后发现这两个服务器的端口号都是一样的,数据库也是一样的。
输入如下命令查看服务器端口号:
SHOW GLOBAL VARIABLES LIKE 'port';
此时大致已经符合我的测试要求,两个MySQL服务器终端。
上面修改的端口号没生效是因为还没有给它添加环境变量。
也有可能是需要全部关闭再重新打开,跟加没加环境变量无关。
7、添加环境变量
如果想变成两个独立的MySQL服务器,给第二个服务器添加对应的环境变量。
(后面发现不添加环境变量也可以)
再添加一个环境变量,属于 mysql8_3307 这个服务器的环境变量。
如图:这个 mysql8_3307 服务器的端口号也重新变成 3307 了。
数据库数据也是全新的。
再次查看注册表,发现没有变化。
8、navicat 连接3307端口号的MySQL服务器
连接成功
9、去除环境变量问题
我想把刚刚添加的环境变量给删除掉,然后再登录,3307端口号的服务器依然能登录。
3307 不给它添加环境变量也可以。
10、删除 MySQL 服务器
只需要通过管理员启动命令行窗口,输入如下命令即可删除 MySQL 服务
sc delete [mysql的服务名]