设为首页 加入收藏

TOP

MySQL AB复制详述(二)
2015-08-31 19:59:23 来源: 作者: 【 】 浏览:51
Tags:MySQL 复制 详述
而新加的 slave2 没有,必须在配置复制前同步数据。
同步数据有两种方法:
第一种:
在 master 上执行以下命令:
[root@vm1 ~]# mysqldump westos > westos.bak
[root@vm1 ~]# scp westos.bak 172.25.254.3:


在slave2(vm3)
[root@vm3 ~]# /etc/init.d/mysqld start
[root@vm3 ~]# mysqladmin create westos? ? ? ? #创建westos库
[root@vm3 ~]# mysql westos < westos.bak? ? ? ? ? ?


第二种:
master(vm1)
[root@vm1 ~]# cd /var/lib/mysql/
[root@vm1 mysql]# scp mysql-bin.000003 172.25.254.3:


slave2(vm3)
[root@vm3 ~]# /etc/init.d/mysqld start
[root@vm3 ~]# mysqlbinlog mysql-bin.000003
...
# at 4
#150718? 9:31:36 server id 1? end_log_pos 106? ? Start: binlog v 4, server v 5.1.71-log created 150718? 9:31:36 at startup
...
# at 690
#150718 10:18:40 server id 1? end_log_pos 795? ? Query? ? thread_id=2? ? exec_time=0? ? error_code=0
SET TIMESTAMP=1437185920/*!*/;
insert into users values ('user2','456')
...


记录需要同步的开始与结尾时间


[root@vm3 ~]# mysqlbinlog --start-datetime="2015-07-18 9:31:36" --stop-datetime="2015-07-18 10:18:41" mysql-bin.000003? ##输入的结束时间比二进制文件中的结束时间稍大


[root@vm3 ~]# mysqlbinlog mysql-bin.000003 |mysql


2)在 slave1(vm2) 上加入以下设置
[root@vm2 ~]# vim /etc/my.cnf
...
server-id=2
log-bin=mysql-bin
binlog-do-db=westos
binlog-ignore-db=mysql
log-slave-updates
...


[root@vm2 ~]# /etc/init.d/mysqld restart


mysql> grant replication slave,reload,super on *.* to westos@'172.25.254.%' identified by 'wesstos';
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.000001 |? ? ? 348 | westos? ? ? | mysql? ? ? ? ? ? |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)


3).在slave2(vm3)
[root@vm3 ~]# vim /etc/my.cnf
...
server-id=3


[root@vm3 ~]# /etc/init.d/mysqld restart
mysql> change master to master_host='172.25.254.2', master_user='westos',
master_password='westos',master_log_file='mysql-bin.000001',master_log_pos=348;


mysql> slave start;


mysql> show slave status\G;
? ? ? ? ? ? Slave_IO_Running: Yes
? ? ? ? ? ? Slave_SQL_Running: Yes


在master端对数据库操作,测试


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MySQL复制过程中server-id的理解 下一篇Oracle闪回技术flashback

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: