CentOS下为MySQL开多个实例

1 首先停止mysql的开机自启动

chkconfig mysql off

2 创建新的数据库实例目录

mkdir /data/mysql

3 检查当前的mysql的socket和datadir

show variables like 'socket';
show variables like 'datadir';

记下两个结果

4 新建或修改/etc/my.cnf,内容为:

[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user = mysql
log = /var/lib/mysql/multi.log
[mysqld1]
socket = 这里写3步查到的socket
datadir = 这里写3步查到的datadir
[mysqld2]
socket = 新MySQL实例的socket
datadir = 新MySQL实例的datadir(假设是/data/mysql)
[mysqld3]
同2

5 为新实例创建初始化数据目录并设置权限

mysql_install_db --datadir=/data/mysql
chown -R mysql:mysql /data/mysql

6 测试手动启动

/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf start

此时查看进程可以看到

ps uax | grep mysqld_safe | grep datadir

确认无误

7 设置开机启动

vi /etc/rc.local
/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf start 1-3

a

 评论
 发表评论
姓   名: