环境:Centos 6.9,Mysql 8.0


配置准备:1、为Centos配置好网络,使用远程工具连接。

2、安装mysql,途径不限。mysql8.0和5.7区别不大,8.0在配置主从的时候默认开启了binlog,5.7手动起一下就好,下文有启动方法。(我使用rpm包安装,安装后要先启动msyql服务,命令service mysqld start)

3、mysql安装后的默认密码在 /etc/my.cnf 中 log-error配置项所指向的log地址中 /var/log/mysqld.log

主从复制

好处:多节点性能变优,安全性更高,提高服务器负载。

应用场景:数据库备份、读写分离


步骤: 首先。确定一个主节点master,其他为从节点slave。

   1、配置主节点。创建用户授予权限;如果binlog没开启,打开binlog日志;

      2、配置从节点。配置同步日志;确定主节点的ip,端口,用户;启动从节点;

  

主节点(Master):

  修改mysql配置文件,vim /etc/my.cnf 配置server-id的值,与从节点不能重复。

        创建创建一个用户。 create user 'repl'@'192.168.110.%' identified by 'Repl_123456';

在主服务器赋予它 replication slave 权限。grant replication slave on *.* to 'repl'@'192.168.110.%';

mysql 日志类型:

      Error log 错误日志

      General query log普通查询日志

      Slow query log 慢查询日志(记录哪些查询比较慢 )

      Binary log二进制日志文件(1、用于增量备份。2、主从)

  查看是否已开启binlog:show variables like '%log_bin%';

   如果没开启,配置 :vim /etc/my.cnf加上  server-id=1(多台节点值不能重复)和 log_bin=/var/lib/mysql/mysql-bin 保存退出 重启mysql服务。

   查看binlog日志:在mysql中 show binlog events  in '文件名';  在系统中 mysqlbinlog  文件名;

   每次重新启动mysql都会新建一个binlog。查看当前是哪个binlog文件:show master status;

       show msater logs;(查看所有日志文件),reset master(清空所有日志文件)

  binlog日志恢复数据

       mysqlbinlog 文件名 | mysql -u root -p

从节点(Slave):

    修改mysql配置文件,vim /etc/my.cnf

    配置server_id(不能与主节点重复,且必须为数字)

配置同步日志路径relay-log=/var/lib/mysql/relay-bin

进入mysql执行

mysql> CHANGE MASTER TO
-> MASTER_HOST='192.168.110.66',
-> MASTER_USER='repl',
-> MASTER_PASSWORD='Repl_123456',
-> MASTER_LOG_FILE='binlog.000007',
-> MASTER_LOG_POS=0;
Query OK, 0 rows affected, 2 warnings (0.01 sec) mysql> START SLAVE;
Query OK, 0 rows affected (0.00 sec)

  show slave status\G;检查是否已链接上主节点,根据里面的错误信息修改配置。确保master防火墙关闭,/var/lib/mysql/auto.cnf里的uuid不重复。

如果出现Slave_Io_Running:yes但Slave_SQL_Running:No的情况执行

mysql> stop slave;

  mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

  mysql> start slave;

配置成功!

主主复制其实的意思就是节点直接互为主从复制。

在配置好主从之后再去配置从节点,反向配置一遍主从。

Mysql 主从主主复制总结(详细)的更多相关文章

  1. 学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践

    双机热备的概念简单说一下,就是要保持两个数据库的状态 自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致. 这样做的好处多. 1. 可以做灾备,其中一个坏了可以切换 ...

  2. 学一点 MYSQL 双机异地热备份—-MYSQL主从,主主备份原理及实践

    简单介绍mysql双机,多机异地热备简单原理实战. 双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致. 这样做 ...

  3. 快速理解mysql主从,主主备份原理及实践

    感谢大家在上一篇 学一点Git--20分钟git快速上手 里的踊跃发言.这里再次分享干货, 简单介绍mysql双机,多机异地热备简单原理实战. 双机热备的概念简单说一下,就是要保持两个数据库的状态自动 ...

  4. mysql主从配置主主配置

    一.     概述  MySQL从3.23.15版本以后提供数据库复制(replication)功能,利用该功能可以实现两个数据库同步.主从模式.互相备份模式的功能.本文档主要阐述了如何在linux系 ...

  5. MYSQL主从同步/主主同步

    一.MYSQL主从同步 注意:进行主从同步操作时需要确保DB无写操作 flush tables with read lock:   //全局读锁定,执行了命令之后所有库所有表都被锁定只读. 1.在主机 ...

  6. MySQL主从及主主环境部署

    主从同步 主机环境 mysql的安装可以参考:https://www.cnblogs.com/brianzhu/p/8575243.htmlCentos7版本master:192.168.192.12 ...

  7. CentOS 6.5 下MySql主从、主主配置

    参考网站: http://blog.csdn.net/faye0412/article/details/6280761 http://blog.csdn.net/kk185800961/article ...

  8. MySQL主从、主主、半同步节点架构的的原理及实验总结

    一.原理及概念: MySQL 主从复制概念 MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点.MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来 ...

  9. mysql主从之主键冲突

    收到短信报警,两台数据库都报slave同步失败了,先说明一下环境,架构:lvs+keepalived+amoeba+mysql,主主复制,单台写入, 主1:192.168.0.223(写) 主2:19 ...

  10. 高性能Mysql主从架构的复制原理及配置详解

    温习<高性能MySQL>的复制篇. 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台 ...

随机推荐

  1. 2.windows下安装git

    转自:https://blog.csdn.net/lvkelly/article/details/54666868

  2. JS循环 for while 全局/局部变量 短路

    循环语句: For for循环的格式 for(var i = 0; i < 10; i ++){ } for循环的执行顺序: ①   ② 若判断为 true  进④  进③ 进②判断 ……循环 ...

  3. 05:Cave Cows 1 洞穴里的牛之一

    总时间限制:  10000ms 单个测试点时间限制:  1000ms 内存限制:  262144kB 描述 很少人知道其实奶牛非常喜欢到洞穴里面去探险.     洞窟里有N(1≤N≤100)个洞室,由 ...

  4. python 3.x 学习笔记13 (网络编程socket)

    1.协议http.smtp.dns.ftp.ssh.snmp.icmp.dhcp....等具体自查 2.OSI七层应用.表示.会话.传输.网络.数据链路.物理 3.socket: 对所有上层协议的封装 ...

  5. Struts1、Struts2、Hibernate、Spring框架工作原理介绍

    Struts1工作原理 Struts1工作原理图 1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控 ...

  6. 《鸟哥的Linux私房菜》笔记——02. 关于Linux

    Unix 历史 1969年以前:伟大的梦想--Bell, MIT 与 GE 的「Multics」系统 1969年:Ken Thompson 的小型 file server system 1973年:U ...

  7. ActiveMQ学习笔记(10)----ActiveMQ容错的连接

    1. Failover Protocol 前面讲述的都是Client配置连接到指定的broker上,但是,如果Broker的连接失败怎么办呢?此时,Client有两个选项:要么立刻死掉,要么连接到其他 ...

  8. 路飞学城Python-Day8

    [11.函数-基本介绍]函数引出问题:如果出现这个需求,需要监控单位的服务器状况,当CPU/MEMORY/DISK等指标使用量超过阀值时,就发邮件报警 while True: if CPU利用率> ...

  9. python_if_else,while,break

    #密码密文展示,getpass在pycharm中无法使用,只能在python中使用import getpass #登录判断'''raw_name="Monica"raw_passw ...

  10. Docker学习总结(10)——10分钟玩转Docker

    1.前言 进入云计算的时代,各大云提供商AWS,阿里云纷纷推出针对Docker的服务,现在Docker是十分火爆,那么Docker到底是什麽,让我们来体验一下. 2.Docker是什麽 Docker是 ...