0

0

MySQL AB复制详述

php中文网

php中文网

发布时间:2016-06-07 15:10:17

|

1359人浏览过

|

来源于php中文网

原创

实验所需主机:master:vm1 172.25.254.1slave1:vm2 172.25.254.2slave2:vm3 172.25.254.3在三台主机上分别安装mysql-serveryu

实验所需主机:
master:vm1 172.25.254.1
slave1:vm2 172.25.254.2
slave2:vm3 172.25.254.3
在三台主机上分别安装mysql-server
yum install -y mysql-server

1.master端的配置
[root@vm1 ~]# vim /etc/my.cnf
[mysqld]下面加入
log-bin=mysql-bin              #启动二进制日志系统
server-id=1            #必须为 1 到 232–1 之间的一个正整数值
binlog-do-db=westos            #二进制需要同步的数据库名,如果需要同步多个库,例如要再同步                        test库,再添加一行“binlog-do-db=test”,以此类推
binlog-ignore-db=mysql          #禁止同步 mysql 数据库


启动master端数据库
[root@vm1 ~]# /etc/init.d/mysqld start
给数据库授权,让172.25.254.网段的主机以用户westos,密码westos来访问数据库

mysql> grant replication slave, reload,super on *.* to westos@'172.25.254.%' identified by 'westos';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> show master status;
+------------------+----------+--------------+------------------+
| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |      348 | westos      | mysql            |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
记录 File 和 Position 的值,下面会用到


2.slave1(vm2)配置
[root@vm2 ~]# vim /etc/my.cnf
[mysqld]加入

server-id=2

启动slave1数据库
[root@vm2 ~]# /etc/init.d/mysqld start

在数据库中做如下操作
mysql> change master to master_host='172.25.254.1', master_user='westos', master_password='westos', master_log_file='mysql-bin.000003', master_log_pos=348;
Query OK, 0 rows affected (0.57 sec)
###master_log_file 为master端数据库的二进制文件(可以在master端 cd /var/lib/mysql mysqlbinlog mysql-bin.000003 进行查看) master_log_pos 为数据库要同步的点


mysql> slave start;
Query OK, 0 rows affected (0.00 sec)

mysql> show slave status\G;
...

            Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

如果都是 yes,表示从库的 I/O,Slave_SQL 线程都正确开启.表明数据库开始同步

注意:在同步之前确保 master 与 slave 上的数据一致性。

网群企业网站管理系统2.1
网群企业网站管理系统2.1

整站DIV+CSS布局,支持全部浏览器,加载访问速度更快,兼容性更强。 导航管理:不限制个数,支持排序和外联。 幻灯管理:支持文字、链接、不限制个数可以排序。 产品频道:支持独立关键字、关键描述,支持排序。 文章频道:支持独立关键字、关键描述,支持排序。 单页管理:不限制个数,支持简短和详细内容,支持排序。 在线留言:支持回复和审核功能。 友情链接:支持文字和logo链接两种 更新记录: 2013

下载


3.测试
在master端进行操作,查看slave1(vm2)端数据库是否同步

master(vm1)端

mysql> create database westos;
Query OK, 1 row affected (0.00 sec)

mysql> use westos
Database changed
mysql> create table users (
    -> username varchar (15) not null,
    -> password varchar (25) not null
    -> );
Query OK, 0 rows affected (0.24 sec)

mysql> insert into users values ('user1','123');
Query OK, 1 row affected (0.00 sec)

mysql> insert into users values ('user2','456');
Query OK, 1 row affected (0.00 sec)

mysql> select * from users;
+----------+----------+
| username | password |
+----------+----------+
| user1    | 123      |
| user2    | 456      |
+----------+----------+
2 rows in set (0.00 sec)

slave1(vm2)端

mysql> show databases;
+--------------------+
| Database          |
+--------------------+
| information_schema |
| mysql              |
| test              |
| westos            |
+--------------------+
4 rows in set (0.00 sec)

mysql> use westos
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from users;
+----------+----------+
| username | password |
+----------+----------+
| user1    | 123      |
| user2    | 456      |
+----------+----------+
2 rows in set (0.00 sec)

如果写操作较少,而读操作很多时,可以采取这种结构,一个做master,,其他的做slave。可以将读操作分布到其它的 slave,从而减小master 的压力。但是,当 slave 增加到一定数量时,slave 对 master 的负载以及网络带宽都会成为一个严重的问题。这种结构虽然简单,但是,它却非常灵活,足够满足大多数应用需求。

4.当设置 log_slave_updates 时,你可以让 slave 扮演其它 slave 的 master。此时,slave 把 SQL 线程执行的事件写进行自己的二进制日志(binary log),然后,其它的 slave 可以获取这些事件并执行它,从而有效缓解master 的压力。其配置方法如下:

添加slave2(vm3)
1)由于 master 上已经有数据,而新加的 slave2 没有,必须在配置复制前同步数据。
同步数据有两种方法:
第一种:
在 master 上执行以下命令:
[root@vm1 ~]# mysqldump westos > westos.bak
[root@vm1 ~]# scp westos.bak 172.25.254.3:

相关专题

更多
Word 字间距调整方法汇总
Word 字间距调整方法汇总

本专题整合了Word字间距调整方法,阅读下面的文章了解更详细操作。

2

2025.12.24

任务管理器教程
任务管理器教程

本专题整合了任务管理器相关教程,阅读下面的文章了解更多详细操作。

2

2025.12.24

AppleID格式
AppleID格式

本专题整合了AppleID相关内容,阅读专题下面的文章了解更多详细教程。

0

2025.12.24

csgo视频观看入口合集
csgo视频观看入口合集

本专题整合了csgo观看入口合集,阅读下面的文章了知道更多入口地址。

29

2025.12.24

yandex外贸入口合集
yandex外贸入口合集

本专题汇总了yandex外贸入口地址,阅读下面的文章了解更多内容。

58

2025.12.24

添加脚注通用方法
添加脚注通用方法

本专题整合了添加脚注方法合集,阅读专题下面的文章了解更多内容。

1

2025.12.24

重启电脑教程汇总
重启电脑教程汇总

本专题整合了重启电脑操作教程,阅读下面的文章了解更多详细教程。

3

2025.12.24

纸张尺寸汇总
纸张尺寸汇总

本专题整合了纸张尺寸相关内容,阅读专题下面的文章了解更多内容。

5

2025.12.24

Java Spring Boot 微服务实战
Java Spring Boot 微服务实战

本专题深入讲解 Java Spring Boot 在微服务架构中的应用,内容涵盖服务注册与发现、REST API开发、配置中心、负载均衡、熔断与限流、日志与监控。通过实际项目案例(如电商订单系统),帮助开发者掌握 从单体应用迁移到高可用微服务系统的完整流程与实战能力。

1

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 0.9万人学习

PHP自制框架
PHP自制框架

共8课时 | 0.6万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 769人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号