一.多实例介绍
1.1什么是MySQL多实例
简单的说,就是在一台服务器上开启不同的端口,运行多个MySQL服务进程,这些服务进程通过
不同的socket监听不同的服务端口来提供各自的服务
1.2MySQL多实例的作用与问题
1.2.1有效利用服务器的资源
注意:在企业中千万不要让服务器资源剩余太多,也不要将服务器的资源接近全部使用,你要流出一部分作冗余。
1.2.1节约服务器资源
1.2.2资源抢占问题
当某个MySQL并发很高,整个MySQL实例会消耗整个服务器的资源,这样会影响其他服务。所以在多实例的服务器上要有时间约束。
1.3多实例MySQL安装的常见配置方案
1》
2》MySQL官方手册第五章。
二、cmake编译安装5.5.32
2.1 cmake编译软件安装cd /home/oldboy/tools/
tar xf cmake-2.8.8.tar.gz
cd cmake-2.8.8
./configure
2.2安装MySQL过程中的依赖包
yum install ncurses-devel -y
2.3安装MySQL
2.3.1创建MySQL使用的用户和组groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql
2.3.2解压编译cmake安装MySQLtar zxf mysql-5.5.32.tar.gz
cd mysql-5.5.32
<1>cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \
-DMYSQL_DATADIR=/application/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0
<2>make
<3>make install
2.3.3多实例初始化及启动
1》增减MySQL的全局启动路径
在/etc/profile文件中添加export PATH=/application/mysql/bin:$PATH
source /etc/profile使配置文件生效
2》初始化数据库
他是为了初始化数据库的基础文件一些表和库
将安装在/application/mysql-5.5.32做一个软连接ln -s mysql-5.5.32 mysql
./mysql_install_db --basedir=/application/mysql --datadir=/data/3306/data --user=mysql
./mysql_install_db --basedir=/application/mysql --datadir=/data/3307/data --user=mysql
出现两个ok表示初始化成功/data/3306/mysql start
Starting MySQL...
/data/3307/mysql start
Starting MySQL...
[root@loveyu scripts]# netstat -lnt |grep 330
tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3306 0.0.0.0:*