数据库配置的时候,一定要开启二进制日志,如果开始没开启后来再想开启的话,必须重启。
基于日志点的复制
备份数据库工具
-------------------------------------------------------------------------------------------------
基于日志的复制连路
开始
1.准备2台虚拟机,ip addr命令查看ip
主服务器ip 192.168.3.100, 从服务器192.168.3.101
2.创建用户,更改用户权限
3.配置主数据库 和 从数据库 的参数 /etc/my.cnf
主服务器
server-id = 1
启动了bin-log
从服务器
server-id = 2
配置relay—log
同样启用的bin-log。 最好启用,方便主从迁移,故障转移等。
4.初始化从服务器的数据
备份主数据库,这里因为是测试 用的mysql dump ,生产环境最好选用xtrabuctup
注意不要备份系统库,会造成未知的问题
将文件备份到从服务器上 root目录
初始化从服务器数据库
5.启动复制连路
查看备份文件 all.sql 里面有这么一句话,直接复制下来就行
将连路配置好
查看连路配置 show slave status \G;
启动连路 start slave;
6.查看主从进程 show processlist \G;
从服务器启动了2条相关的线程
主服务器启动了Binlog Dump 线程
-------------------------------------------------------------------------------------------------
基于日志复制的优缺点
----------------------------------------------------------------------------------------------------
GTID复制方式的优势
基于日志复制的缺点
GTID复制的优势
GTID的步骤
----------------------------------------------------------------------------------------------------
基于GTID的复制
前两步是和【基于日志的复制】步骤是一样的
3.修改主服务器上的文件 vi etc/my.cnf
启动这两个选项
从服务器的配置
启动 这几个选项
重启服务器
4.初始化从服务器的数据
拷贝到从服务器
5.对从数据库进行配置
6.启动复制,并查看是否成功
7.测试 : 主数据库添加数据,查看从数据库是否有数据
-----------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------
从库分担读负载,分库分表分担写负载。
主主复制
不建议使用,但是特定场景除外
场景:例如两个地区都有数据库,都要保存两个地区的数据。
1。主备模式,只有一个主对外提供服务,一个 出现问题,另一个才会对外提供服务
2。主主模式,同时对外提供服务