作为Master服务器apenglinux-001.cn的配置
/ -- 建库,表,备份库,将备份传给另一台机器-- /
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e "create database db1;use db1;create table t1(id int unsigned not null primary key auto_increment,name varchar(100));insert into t1(name)values('zhangsan'),('lisi'),('wangwu');select * from t1;"
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+----------+
| id | name |
+----+----------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
+----+----------+

[root@apenglinux-001 ~]# mysqldump -uroot -p123456 -B db1 > db1_all.sql

[root@apenglinux-001 ~]# mysqldump -uroot -p123456 -B db1 > db1_all.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@apenglinux-001 ~]# scp db1_all.sql 192.168.1.20:/root
The authenticity of host '192.168.1.20 (192.168.1.20)' can't be established.
ECDSA key fingerprint is SHA256:ENfUT65MBnG5u82/aeA84Wl7klhZZMS/MI1+36eGu8k.
ECDSA key fingerprint is MD5:bb:7a:dc:8b:d2:5b:99:54:9a:8d:f2:17:81:0a:5e:72.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.20' (ECDSA) to the list of known hosts.
root@192.168.1.20's password:
db1_all.sql 100% 2024 856.5KB/s 00:00

/ -- 配置my.cnf-- /
[root@apenglinux-001 ~]# vim /etc/my.cnf
log-bin=apenglinux-001.cn
server-id=100
binlog-do-db=db1
binlog-ignore-db=mysql

/ -- 开启MySQL服务-- /
[root@apenglinux-001 ~]# systemctl restart mysqld

/-- 作为master时,授权,将表锁定--/
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e "grant replication slave on . to slave@192.168.1.20 identified by '123';flush tables with read lock;"

作为slave服务器apenglinux-002的配置

/-- 还原从master上传过来的数据库-- /
[root@apenglinux-002 ~]# mysql -uroot -p123456 < db1_all.sql
/ -- 配置my.cnf-- /
validate_password=off
log-bin=apenglinux-002.cn
server-id=90
binlog-do-db=db1
binlog-ignore-db=mysql
/-- 重启mysql--/
[root@apenglinux-002 ~]# systemctl restart mysqld
/ -- 停止slave,指定主服务器的ip,user,password,log_file,log_pos,开启slave-- /
[root@apenglinux-002 ~]# mysql -uroot -p123456 -e "stop slave;change master to master_host='192.168.1.10',master_port=3306,master_user='slave',master_password='123',master_log_file='apenglinux-001.000001',master_log_pos=449;start slave;"
/ -- 去主服务器上开启解表操作 -- /
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e 'unlock tables;'
/ -- 查看slave的状态 -- /
[root@apenglinux-002 ~]# mysql -uroot -p123456 -e 'show slave status\G'
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Seconds_Behind_Master: 0
Last_IO_Errno: 0
Last_SQL_Errno: 0
作为master服务器apenglinux-002.cn的配置
[root@apenglinux-002 ~]# mysql -uroot -p123456 -e 'grant replication slave on . to slave@192.168.1.10 identified by "123";flush tables with read lock;show master status;'
mysql: [Warning] Using a password on the command line interface can be insecure.
+-----------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+-----------------------+----------+--------------+------------------+-------------------+
| apenglinux-002.000001 | 449 | db1 | mysql | |
+-----------------------+----------+--------------+------------------+-------------------+
作为slave服务器apenglinux-001.cn的配置
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e 'stop slave;change master to master_host="192.168.1.20",master_port=3306,master_user="slave",master_password="123",master_log_file="apenglinux-002.000001",master_log_pos=449;start slave;'
去apenglinux-002.cn 上解锁
[root@apenglinux-002 ~]# mysql -uroot -p123456 -e 'unlock tables;'
/ -- 查看slave的状态 --/
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e 'show slave status\G'
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Seconds_Behind_Master: 0
Last_IO_Errno: 0
Last_SQL_Errno: 0
此时 apenglinux-001与apenglinux-002两台机器互为主从了。
测试:
/ -- 在apenglinux-001.cn上增加一条记录,在apenglinux-002 上查看-- /
[root@apenglinux-001 ~]# mysql -uroot -p123456 -e 'insert into db1.t1(name)values("aa");select * from db1.t1;'
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+----------+
| id | name |
+----+----------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
| 4 | aa |
+----+----------+

[root@apenglinux-002 ~]# mysql -uroot -p123456 -e 'select * from db1.t1;'
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+----------+
| id | name |
+----+----------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
| 4 | aa |
+----+----------+

/ -- 在apenglinux-002.cn上删除两条记录,在apenglinux-001上查看-- /
[root@apenglinux-002 ~]# mysql -uroot -p123456 -e 'delete from db1.t1 limit 2;select * from db1.t1;'
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+--------+
| id | name |
+----+--------+
| 3 | wangwu |
| 4 | aa |
+----+--------+

[root@apenglinux-001 ~]# mysql -uroot -p123456 -e 'select * from db1.t1;'
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+--------+
| id | name |
+----+--------+
| 3 | wangwu |
| 4 | aa |
+----+--------+

转载于:https://blog.51cto.com/13480443/2311102

MySQL双向主从复制相关推荐

  1. Mysql双向同步复制

    Mysql双向同步复制 http://zhumeng8337797.blog.163.com/blog/static/1007689142011590160330/ 2011-06-09 00:16: ...

  2. 利用percona-toolkit工具检查MySQL数据库主从复制数据的一致性,以及修复。

    利用percona-toolkit工具检查MySQL数据库主从复制数据的一致性,以及修复. 一.pt-table-checksum检查主从库数据的一致性 pt-table-checksum在MASTE ...

  3. mysql的主从复制是如何实现的

    前言 MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为 ...

  4. mysql的主从复制原理与实现

    关于mysql的主从复制,之前一直在听说这个话题,一直没有实现,昨天学习了下,原来是这么回事: 既然是主从复制,那么肯定有主有从,也就说一个主数据库(一般为写库),一个从数据库(读库).主数据库更新了 ...

  5. php mysql 主从复制_Windows 环境下,MySQL 的主从复制和主主复制

    Mysql的主从配置 1.找到配置文件 找到配置文件是主从复制的第一个难点.很多新手都容易找错配置文件,一般my.ini配置文件所在的位置都是隐藏的. 一般人都以为配置文件为 C:\Program F ...

  6. MySQL Replication 主从复制全方位解决方案

    MySQL Replication 主从复制全方位解决方案 参考文章: (1)MySQL Replication 主从复制全方位解决方案 (2)https://www.cnblogs.com/clsn ...

  7. MyCat学习:使用MySQL搭建主从复制(一主一从模式)

    首先使用MyCat登录需要一个前提,那就是有MySQL的主从复制 开始搭建MySQL主从复制(一主一从) 一.配置文件修改 主机配置文件修改 server-id=1 # 定义服务器唯一ID log-b ...

  8. Mysql 8主从复制配置图解

    Mysql 8主从复制配置图解 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理.本文主要介绍mysql的主从的配置. 注:1 当前主服务 ...

  9. MySQL搭建主从复制 读写分离 分库分表 MyCat高可用

    主从演示 读写演示 分表演示 主从复制 环境的介绍 系统环境:centos7.0 客户端连接工具:xshell 远程文件传输工具:xftp 服务器: 192.168.126.138(主) 192.16 ...

最新文章

  1. 一天1300 Star量,GitHub上新官方命令行工具
  2. AngularJS基于MVC的复杂操作案例
  3. MySQL数据库:drop、truncate、delete的区别
  4. 编译分析:提memcmp.c+gcc四十米大刀到C#世界中屠龙
  5. Codeforces Round #478 Div2 975A 975B 975C 975D
  6. echarts地图文字重叠解决方案_踩坑日记:在Echarts中国地图踩到的坑
  7. 微信小程序使用 wxparse 解析 iframe腾讯视频
  8. c语言while函数作用,c语言while(c语言while循环用法)
  9. Scrum板与Kanban如何抉择?ntqbvzshl板与按照brcpht
  10. 一周企业财报 | 汉高、中通、格林酒店、宜人金科、宝尊、维他奶等7家企业发布业绩...
  11. 推荐61个免费最好软件
  12. 高考数学必考知识点高中数学重点知识归纳
  13. 如何录屏?电脑屏幕录制软件哪个好?
  14. python使用opencv_玩转Python图片处理 (OpenCV-Python )
  15. Java开发导入腾讯地图描点_腾讯地图点聚合开发-实现地图找房功能
  16. AIIA开发者大会百度飞桨及EasyDL专场:带你看五花八门的产业AI实践
  17. 基于MobileNetv3实现人脸面部表情识别
  18. 学计算机难吗d,我想学计算机,五笔打字很难吗
  19. 用计算机解开手机密码,手机忘记锁屏密码?维修老师傅教你一招,按下这里就能解开...
  20. Unity之UGUI详解

热门文章

  1. Docker安装与卸载,配置阿里云镜像加速器
  2. Pycharm回车之后不能换行或不能缩进的解决方法
  3. vue标签旋转_vue.js编写移动端页面,检测旋转屏幕,横竖屏。
  4. 固定资产分类与代码_促进产业技术升级换代!固定资产加速折旧优惠政策了解一下...
  5. python 时间序列异常值_python中缺少时间序列值
  6. oracle创建时分秒列,oracle 11g 分区表创建(年月日周时分秒)
  7. mysql的相关技术说明_MySQL 系统架构 说明
  8. java 删除已画出的线_如何删除java中的绘制线?
  9. 安卓学习笔记34:默默工作的服务
  10. PHP案例:实现登录功能