如何在centos7中搭建传统的mysql主从
1、mysql已经安装完成。确定好对应的版本
2、可远程链接,配置好相关地址
3、磁盘空间足,设置好主机名称,用途。
我所准备的环境如下:

1、修改Master 服务器的hosts,执行
vi /etc/hosts,修改为可快速区分功能的名称,修改完成后执行命令:wq退出并保存。

2、修改master的 配置文件(打开binlog)
vi /etc/my.cnf
加入:
log-bin=mysql-bin
server-id=158//这个id是自己的标示,建议可以写成ip地址

3、重启mysql服务,让配置文件生效,执行命令
systemctl restart mysqld

4、创建数据库,创建表,使用sql模拟写入数据


5、授权一个用户,用于远程连接主机(relication)
执行命令:
grant replication slave ,replication client on *.* to 'rep01'@'192.168.31.%' identified by'自己设置的密码';
6、导出当前的数据库。用mysqldump
创建一个文件夹,mkdir /root/backup
这里的命令,最好第一行线写,然后后面再复制。(
mysqldump -uroot -pbgx --all-databases --single-transaction --master-data=1 --flush-logs >/root/backup/db-$(date +%F)-all.sql)

7、ls /root/backup/ 可以看到生成的数据库文件了

8、将这个数据库备份文件,拷贝到slave节点服务器。
scp db-日期-all.sql root@192.168.31.175:/root/backup/
输入你的slave服务器密码。拷贝完成后会显示拷贝结果。
---这步骤是master完成配置,接下来配置slave

1、确认你的salve机器能够被远程登陆mysql
在slave机器上,执行命令 mysql -hmaster -u用户名 -p密码
我这里确认是可以登陆的

2、修改slave的服务器配置文件:
vim /etc/my.cnf 开启binlog日志,写入server-id
[mysqld]
log-bin=mysql-bin
server-id=175
basedir=/soft/mysql
datadir=/soft/mysql/data
3、重启slave的mysql服务。执行
systemctl restart mysqld
4、用master上备份的数据,初始化slave的数据库。
mysql -uroot -pbgx -e "source /root/backup/db-日期-all.sql"
登陆到数据库查看信息情况,是否已经将master的库导入过来了。
从图中(标黑的地方)结果我们看到了masterDB已经用于了slave库。

1、接下来,根据基于master的库,做master同步。
change master to master_host='master', master_user='用户名', master_password='密码';
2、启动slave

3、查看slave的状态
可以看到双yes。--整个主从搭建完成。

1、主从搭建后期:
我们进行一项主从测试
在master服务器的 masterDB中的t1表中插入几条数据;看slave中是否同步有数据。
insert into t1 values (3,'ccc');
insert into t1 values (4,'ddd');

2、查看slave

3、o k 数据都同步过来了。说明主从成功了