一、说明

就是在一台机器上面开启多个不同的端口,运行多个MySQL服务进程。这些MySQL多实例公用一套安装程序,使用不同的(也可以是相同的)配置文件,启动程序,数据文件。在提供服务时候,多实例MySQL在逻辑上看来是各自独立的,多个实例的自身是根据配置文件对应的设定值,来取得相关硬件资源的多少。


二、实战步骤:

1、同步时间


     2、准备mysql依赖包


     3、环境准备


            3.1添加mysql用户


            3.2编译安装mysql


     4、安装MySQL多实例


     5、准备配置文件


     6、启动MySQL


     7、登录mysql与一些安全措施


     8、关闭MySQL


     9,、提供简易管理脚本


     10、为mysql的root用户创建密码


     11、附,多配置文件安装mysql多实例,这里增加mysql 的3309端口


     12、总结


   1、同步时间

    yum install epel*

ntp 202.120.2.101

yum install -y ntp

ntpdate 202.120.2.101

hwclock -w

   2、准备yum 依赖

   yum install -y autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool* openssl*

   yum install cmake -y


   3、环境准备

  3.1添加mysql用户

  id mysql

  useradd mysql 

  mkdir /data/330{6,7}/data

  tar xf mysql-5.6.26.tar.gz -C /usr/local/

  ln -sv /usr/local/mysql-5.5 mysql

  cd mysql

  cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

        -DMYSQL_DATADIR=/data \

        -DSYSCONFDIR=/etc \

        -DWITH_INNOBASE_STORAGE_ENGINE=1 \

        -DWITH_ARCHIVE_STORAGE_ENGINE=1 \

        -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DWITH_SSL=system \

-DWITH_ZLIB=system \

-DWITH_LIBWRAP=0 \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci

make&make install


mysqld.cc: In function ‘void handle_connections_sockets()’:

主要是没有安装libmcrypt相关的包

直接使用yum install libmcrypt* -y安装完成后,在重新编译

在编译出现异常,在重新编译的时候,需要先删除mysql目录下的CMakeCache.txt这个文件,然后再进行编译!!!



   4、安装MySQL多实例

    cd /usr/local/

    scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/

scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/

    ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3306/data --user=mysql

chown -R mysql:mysql /data

   5、准备配置文件

    rz data.zip

unzip data.zip

cp data/3306/mysql my.cnf /data/3306/

cp data/3307/mysql my.cnf /data/3307/

find /data -type f -name "mysql" |xargs chmod +x 

   6、mysql环境变量设置

    vim /etc/profile/mysql.sh

    export MYSQL=/usr/local/mysql/bin

    export PATH=$PATH:$MYSQL

    chmod +x /etc/profile/mysql.sh

    source /etc/profile/mysql.sh

   7、mysql的启动

    /data/3306/mysql start

    netstat -tulnp | grep 3306

   8、mysql连接

      mysql -S /data/3306/mysql.sock