首页 > 代码库 > 同一服务器上运行两个mysql实例
同一服务器上运行两个mysql实例
同一服务器上运行两个mysql实例
其实没那么复杂,两个mysql实例使用不同的目录存储,使用不同的端口访问,加载不同的配置文件即可实现。
假如有两个MYSQL A和B
MYSQL A为系统标准安装的RPM程序。存储在 /var/lib/mysql 配置文件为 /etc/my.cnf,这没什么特别的什么都不用改。
现在需要运行第二个MYSQL B,这时你就不能RPM了。使用源码包编译安装。指定安装位置为 /usr/local/mysqlb
主要编译参数如下:
./configue –prefix=/usr/local/mysqlb
安装步骤略过……
安装好以后,将配置文件 /etc/my.cnf 复制为 /etc/myb.cnf
并修改其中的
port=3307
basedir=/usr/local/mysqlb
datadir=/usr/local/mysqlb/var
保存之后,手工指定配置文件启动MYSQL B即可:
/usr/local/mysqlb/bin/mysqld_safe –defaults-file=/etc/myb.cnf
netstat去查看吧,已经有 3306 3307 两个MYSQL在运行了。
指定配置文件
复制一个 my_setting.cnf ,修改为3340
/Data/apps/mysql/bin/mysqld_safe --defaults-file=/Data/apps/mysql/var/my_setting.cnf --user=mysql &
注意,指定配置文件的参数应该需要在第一个位置出现,互换两个参数的位置会出错了,启动后,确实是3340
6 修改启动参数
/Data/apps/mysql/bin/mysqld_safe --defaults-file=/Data/apps/mysql/var/my_setting.cnf --user=mysql --port=3341 &
启动后是 3341端口
# /usr/local/mysql/bin/mysqladmin -u root -p shutdown