在一些情况下,我们会在一台服务器上安装多个MySQL,同时对外提供应用服务。这样我们可以更加充分利用现有的资源,控制企业成本。比如,一台SUN T5120机器,8核64个线程,这么充足的资源事实上MySQL并不能充分利用,我们都知道Oracle对多线程的利用要远远高于MySQL(这里我们多少也可以理解一点为什么oracle和sun结合了),尽管在5.4以后MySQL对线程的利用上有了很大改善,将线程的最优利用数从以前的4到8提升到了现在的16个。如果你就安装一个MySQL,那么多数资源就白白浪费了,同时也不能达到理想的状态,那么,我们完全可以在上面同时安装多个MySQL让它为不同的应用提供服务,同一台服务器上管理起来也相对比较方便些。下面我们就来看看如何实现,这里我只介绍两台的安装,再多也是一样的方法。
实验环境:一台普通PC,CentOS 5.2,mysql-5.1.32-linux-i686-glibc23.tar.gz
实验说明:MySQL采用二进制包安装。我们将在Linux系统下安装两个MySQL数据库,这里指的是MySQL这个数据库软件本身,而不是它里面的应用数据库,我们很多时候见到的都是一个MySQL下面创建了多个数据库,也就是show databases的时候你看到的,我们要注意这些差别。
具体操作:
安装MySQL。
MySQL1
# groupadd mysql
# useradd -g mysql mysql
# tar -xzf /opt/software/mysql-5.1.32-linux-i686-glibc23.tar.gz -C /opt
# mv mysql-5.1.32-linux-i686-glibc23 mysql1
# cd /opt/mysql1
# ./scripts/mysql_install_db –user=mysql
# chown -R root.mysql .
# chown -R mysql.mysql data
MySQL2
# groupadd mysql
# useradd -g mysql mysql
# tar -xzf /opt/software/mysql-5.1.32-linux-i686-glibc23.tar.gz -C /opt
# mv mysql-5.1.32-linux-i686-glibc23 mysql2
# cd /opt/mysql2
# ./scripts/mysql_install_db –user=mysql
# chown -R root.mysql .
# chown -R mysql.mysql data
两个MySQL数据库已经安装完成,进入data目录下你会看到MySQL已经好默认安装好了3个数据库。接下来我们要做的是启动数据库前的一些准备工作,既然我要在同一台服务器上安装两个MySQL,那么如何区分它们是不同的个体呢,这就需要我们作进一步细化,不同的MYSQL_HOME,不同的PORT,不同的SOCKET,我们通过这些关键值来对它们进行区别。
» 继续阅读 如何在一台服务器上同时运行多个MySQL
最新评论