首页 > 代码库 > MySQL单机多实例部署详解

MySQL单机多实例部署详解

一、mysql多实例的原理

mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程。这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务。

这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配置文件、启动程序、数据文件。在提供服务时,mysql多实例在逻辑上看来是各自独立的,各个实例之间根据配置文件的设定值,来取得服务器的相关硬件资源。

二、mysql多实例的特点

2.1 有效的利用服务器资源

当单个服务器资源有剩余时,可以充分利用剩余的服务器资源来提供更多的服务。

2.2 节约服务器资源

当公司资金紧张,但是数据库需要各自提供独立服务,而且需要主从同步等技术时,使用多实例就最好了。

2.3 出现资源互相抢占问题

当某个实例服务并发很高或者有慢查询时,会消耗服务器更多的内存、CPU、磁盘IO等资源,这时就会导致服务器上的其它实例提供访问的质量下降,出现服务器资源互相抢占的现象。

三、mysql多实例应用场景

3.1 资金紧张型公司的选择

当公司业务访问量不太大,又舍不得花钱,但同时又希望不同业务的数据库服务各自独立,而且需要主从同步进行等技术提供备份或读写分离服务时,使用多实例是最好不过的。

3.2 并发访问不是特别大的业务

当公司业务访问量不太大,服务器资源基本闲置的比较多,这是就很适合多实例的应用。如果对SQL语句优化的好,多实例是一个很值得使用的技术。即使并发很大,只要合理分配好系统资源,也不会有太大问题。

    四、mysql5.5多实例部署方法

    4.1 MySQL多实例部署有2种方法:一种利用mysqld_multi配置、一种多实例分别定义不同的配置文件。先聊下利用mysqld_multi 配置(MySQL-5.5.36.tar.gz、cmake-2.8.8.tar.gz)

    1、同步时间

    #yum install -y ntp

    #ntp -s time.windows.com

    #hwclock -w

    2、安装MySQL需要的依赖包

    # yum install ncurses-devel libaio-devel cmake gcc gcc-c++ -y

    3、安装上传工具(上传MySQL、cmake源码包到/src)

    #yum install lrzsz -y   

    4、编译安装cmake

    #cd /src

    #tar xf cmake-2.8.8.tar.gz

    #cd cmake-2.8.8

    #./configure  #无需加任何参数

    #gmake   #gmake install

    #cd ..

    5、创建mysql用户与组

    #useradd -r mysql #创建系统用户,不登录系统(等同useradd mysql -s /sbin/nologin -M)

    #id mysql  #查看用户ID为系统用户

    6、开始安装mysql

    #cd /src   #tar xf mysql-5.5.32.tar.gz  #cd mysql-5.5.32

本文出自 “liwenjia'blog” 博客,请务必保留此出处http://liwenjia.blog.51cto.com/2656598/1869055

MySQL单机多实例部署详解