<返回更多

MySQL多实例部署详解

2020-04-24    
加入收藏

多实例部署概念

在同一主机上,同时开启多个不同的服务器端口(如: 3306、3307),同时运行多个MySQL服务进程,这些服务通过不同的socket监听不同的服务器端口来提供服务。


说明: 服务器硬件资源(CPU、Mem、Disk)、软件资源(centos系统)为公共资源。

多实例部署适用场景

优势:

(1)有效利用服务器资源。单个服务器资源有剩余时,可以充分利用剩余的资源提供服务,且可以实现资源的逻辑隔离。

 

(2)节约服务器资源。资源紧张,数据库又需要各自尽量独立地提供服务,而且需要主从复制等技术,多实例为最佳首选。

弊端:

存在资源相互抢占的问题。

 

当某个数据库实例并发很高,或有SQL慢查询时,整个实例会消耗大量的系统CPU、磁盘IO等资源,导致服务器上其他数据库实例提供服务的质量一起下降。

适用场景:

(1)资源紧张型的企业选择。

少量服务器部署多个实例,交叉做主从复制、数据备份及读写分离。

 

(2)并发访问不是特别大的业务。

当访问量不大的时候,服务器的资源基本上都浪费了,适合多实例部署,即使并发很大,合理分配系统资源,搭配服务,也不会有太大问题。

 

(3)门户网站较多适用多实例。

硬件配置好的服务器,可节省IDC机柜空间,同时跑多实例也会减少硬件资源跑不满浪费。

部署方案

1、单一配置文件单一启动程序部署(使用mysqld_multi部署)

此方案使用单一配置文件,不好管理,耦合度太高,不推荐使用此方案!

2、多配置文件多启动程序部署方案
(1)部署规划:

实例3306:
/data/mysql/mysql3306/data

/data/mysql/mysql3306/my.cnf

 

实例3307:
/data/mysql/mysql3307/data

/data/mysql/mysql3307/my.cnf

 

说明:MySQL数据库的安装请参考MySQL5.7编译安装详解


(2)启动停止命令:
#mysqld_safe --defaults-file=/data/mysql/mysql3306/my.cnf 2>&1 > /dev/null &


#mysqld_safe --defaults-file=/data/mysql/mysql3307/my.cnf 2>&1 > /dev/null &

 

#mysqladmin -uroot -pxxx -S /data/mysql/mysql3306/mysql.sock shutdown

#mysqladmin -uroot -pxxx -S /data/mysql/mysql3307/mysql.sock shutdown

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>