您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

MySQL 多实例配置

前面介绍如何在 Windows 、Linux 下安装最新版 ,本节主要介绍如何在同一台主机上配置多实例 。

1. 端口号概念

所谓的端口,就好像是门牌号一样,客户端可以通过 ip 地址找到对应的服务器端,但是服务器端是有很多端口的,每个应用程序对应端口号,通过类似门牌号的端口号,客户端才能真正的访问到该服务器。为了对端口进行区分,将每个端口进行了编号,这就是端口号 。

而 服务认指定的端口号为 3306,这个在之前介绍安装 的时候,其中配置 my.ini 的时候,其中就有端口号配置,如下:

2. 多实例应用场景

企业在项目开发过程中,会有各种各样差异化的需求,这些不同的需求可能对 版本有着不同的要求。

例如某公司官网开发时,使用的是 5.1 版本,但又有了新的开发项目进行,新的项目要求 版本至少要 5.7,这时候假如只有一台服务器的情况下,就需要配置两种不同版本的 。

对于操作系统来说,端口号只允许软件服务占用,但如果不进行相应的处理, 认端口号是 3306,这会导致不同实例的 之间会有占用端口号冲突的情况,从而无法正常运行。

而对于拥有更多业务的企业来说,配置多实例 也是为了更好地方便管理,之前介绍过安装最新版 ,并且启动 8.0 版本的 的认端口是 3306。本小节为了演示方便,都使用 8.0 配置多实例。

3.安装 多实例步骤

前面章节介绍过 Windows 下安装最新版 ,这里我们把下载好的安装包复制两份并分别重新命名为 “3308”、“3309”,如图所示:

接下来介绍如何安装启动端口号分别为 33083309 的 实例,如果想要配置更多 实例,也可参考此新增多个 实例。

1. 进入"3308"目录,新建 my.ini" ,如下:

[d]# 设置3308端口port=3308# 设置的安装目录basedir=D:\WWW\\3308# 设置的数据的存放目录datadir=D:\WWW\\3308\data  
# 允许最大连接数max_connections=200#允许连接失败的。防止有人从该主机试图攻击系统max_connect_errors=10# 服务端使用的字符集认为UTF8character-set-server=utf8# 创建新表时将使用的认存储引擎default-storage-engine=INNODB# 认使用“_native_password”认证default_authentication_plugin=_native_password[]# 设置客户端认字符集default-character-set=utf8[client]# 设置客户端连接服务端时认使用的端口port=3308
default-character-set=utf8

如下图所示 :

2. 以身份打开 cmd 命令,进入 D:WWW\\3308\bin 目录,执行初始化命令,命令如下:

 命令 : d --initialize --console

初始化成功如下图所示:

3. 加载 服务,注意之前安装 已经加载过 服务,为了防止冲突,需要区分,命令如下:

 命令 : d install 3308

加载安装成功如下图所示:

4. 此时可以启动 3308 服务了,启动命令如下:

 命令 : net start 3308

启动成功如下图所示:

5. 用 3308 端口号 ,命令如下:

 命令 :  -uroot -p -P3308

过程如图所示:

成功之后如下图所示:

6. 至此 安装 3308 端口 实例完成,后续参照此继续完成 3309 号端口 服务即可,每次新增实例要保证 my.ini 端口号配置不冲突即可,安装 3309 端口号实例如下图所示:

以上为 my.ini ,下图为 3309 服务启动过程图:

3. 小结

本小节介绍了如何在同一台主机操作系统上配置多个 实例,这些不同的 服务互相独立,分开管理,需要注意的是每个 服务需要使用唯一的端口号,与其他类似服务之间也是如此,不能和其他类似软件服务之间有端口号冲突,负责会导致 服务无法正常运行。


联系我
置顶