MySQL同步配置方案

MySQL同步配置方案

一 安装

首先安装好单台主机的数据库,然后对不同的同步方案给出不同的方法。

1.$su

2.#/etc/init.d/mysql stop(停止数据库服务)

3.#dpkg -l | grep mysql | awk '{print $2}' | xargs dpkg -P  (卸载数据库选是,执行时会提示某些包卸载失败,可忽略)

4.#rm -rf /etc/mysql/*(移除数据库文件)

5.#rm -rf /var/lib/mysql/*(移除数据库文件)

若MySQL版本为5.5.55

vi /etc/mysql/my.cnf

修改47行为 #bind-address =127.0.0.1前面加 #

若MySQL版本为5.7.30

vi /etc/mysql/mysql.conf.d/mysqld.cnf

修改35行为 #bind-address =127.0.0.1前面加 #

mysql -uroot -p123456

mysql>use mysql;

mysql>select host, user from user;

mysql>update user set host='%' where user='root';

mysql>\q;

/etc/init.d/mysql restart

二 手动重置master状态

在配置备机时,一般会看下主机的状态,记下File和Position,后面的命令中master_log_file='mysql-bin.000001',master_log_pos=1需要改为对应的。也可以先重置一下master。

三 双主一从配置

前面的双主配置其实就是两台主机互为主备,要想增加一台从机的话就需要用到通道(MySQL5.7及以上)。

每一台服务器都需要编辑my.cnf。

注释掉#log-slave-updates。级联同步的情况下需要,我们这里注释掉,不然会无限复制同一条记录。

增加如下配置:

master_info_repository=table

relay_log_info_repository=table

第一台主机配置

重启MySQL,/etc/init.d/mysql restart

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.241',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '1-0';

第二台主机配置

重启MySQL,/etc/init.d/mysql restart

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.240',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '0-1';

第三台从机配置

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.240',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '0-2';

mysql> change master to master_host='192.168.81.241',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '1-2';

四 多主配置

三台及以上主机,任意两台之间都是互为主备。针对每一台主机,分别做change master操作,当然也需要用到通道(MySQL5.7及以上)。

每一台服务器都需要编辑my.cnf。

注释掉#log-slave-updates。级联同步的情况下需要,我们这里注释掉,不然会无限复制同一条记录。

增加如下配置:

master_info_repository=table

relay_log_info_repository=table

第一台主机配置

重启MySQL,/etc/init.d/mysql restart

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.241',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '1-0';

mysql> change master to master_host='192.168.81.242',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '2-0';

第二台主机配置

重启MySQL,/etc/init.d/mysql restart

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.240',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '0-1';

mysql> change master to master_host='192.168.81.242',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '2-1';

第三台从机配置

进入MySQL命令行mysql -uroot -p123456

mysql> change master to master_host='192.168.81.240',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '0-2';

mysql> change master to master_host='192.168.81.241',master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=1 for channel '1-2';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值