拓扑图:

MySQL(多主一从)搭建_数据库














实验环境:(三台虚拟机)

server1(master1-178)、server2(master2-179)、server3(slave-175)


Master1:(178)

安装软件

yum install -y mysql mysql-server

开启binlog日志功能

MySQL(多主一从)搭建_拓展_02

启动MySQL登录并授权

MySQL(多主一从)搭建_数据库表_03

MySQL(多主一从)搭建_拓展_04


Master2(179)

安装MySQL软件

yum install -y mysql mysql-server

开启binlog日志功能

MySQL(多主一从)搭建_数据库_05

启动MySQL登录并授权

MySQL(多主一从)搭建_数据库表_06


Slave(175)

安装软件

yum install -y mysql mysql-server

修改MySQL配置文件,开启Multi功能支持多线程MySQL运行

MySQL(多主一从)搭建_数据库_07

[mysqld_muliti]

mysqld=/usr/bin/mysqld_safe

mysqladmin=/usr/bin/mysqladmin

user=root

password=123

[mysqld178]

port=3306

datadir=/var/lib/mysqla

pid-file=/var/lib/mysqla/mysqld.pid

socket=/var/lib/mysqla/mysql.sock

user=mysql

server-id=175

[mysqld179]

port=3307

datadir=/var/lib/mysqlb

pid-file=/var/lib/mysqlb/mysqld.pid

socket=/var/lib/mysqlb/mysql.sock

user=mysql

server-id=175

初始化生成mysqa、mysqlb目录

mysql_install_db --datadir=/var/lib/mysqla --user=mysql

mysql_install_db --datadir=/var/lib/mysqlb --user=mysql

MySQL(多主一从)搭建_数据库表_08

MySQL(多主一从)搭建_数据库表_09

修改权限:

chown -R mysql /var/lib/mysqla

chown -R mysql /var/lib/mysqlb

启动服务:

mysqld_multi --defaults-file=/etc/my.cnf start 178

mysqld_multi --defaults-file=/etc/my.cnf start 179

MySQL(多主一从)搭建_数据库_10

登录测试(并分别做授权):

mysql -P 3306 -S /var/lib/mysqla/mysql.sock

MySQL(多主一从)搭建_数据库表_11

MySQL(多主一从)搭建_数据库_12


mysql -P 3307 -S /var/lib/mysqlb/mysql.sock

MySQL(多主一从)搭建_拓展_13


由于他们两个端口分别对应不同额服务器,所以我们分别在两个服务器上面创建不同的数据库文件,再分别登录两个端口查看,每个端口只能看到他所对应的数据库文件,即为成功:

master1:

MySQL(多主一从)搭建_拓展_14


master2:

MySQL(多主一从)搭建_数据库表_15


slave服务器分别登陆查看

MySQL(多主一从)搭建_拓展_16

MySQL(多主一从)搭建_数据库表_17