主从复制,需要先做一次存量的数据复制,再配主从完成增量复制
192.168.0.105 主
192.168.0.106 从
---------------------------------------------
热备份
1.进入 mysql 查看数据库
mysql -u root -p 123456 -h 192.168.0.105 -P 3307
mysql > show databases;
2.master 锁表
mysql > flush table with read lock;
3.备份相应数据库
mysql > mysqldump -uroot -p123456 --databases consult mall > back.sql
4.master 解锁
mysql > unlock tables;
5.slave 导入数据
mysql -u root -p 123456 -h 192.168.0.106 -P 3307
mysql > mysql -uroot -p123456 < back.sql
---------------------------------------------
异步主从复制环境搭建
//# 关闭防火墙
systemctl stop firewalld.service
//# 启动 docker
systemctl start docker
//# 创建并启动 mysql 容器
docker run --name mysql3307 -p 3307:3306
//# 开启权限,操作宿主机文件
--privileged=true -ti
-e MYSQL_ROOT_PASSWORD=123456
-e MYSQL_DATABASE=enjoy
-e MYSQL_USER=user
-e MYSQL_PASSWORD=pass
-v /home/mysql/docker-data/3307/conf:/etc/mysql/conf.d
//# mysql bin log 目录
-v /home/mysql/docker-data/3307/data/:/var/lib/mysql
-v /home/mysql/docker-data/3307/logs/:/var/log/mysql
-d mysql:5.7
---------------------------------------------
master 配置
/etc/mysql/conf.d/my.cnf
---------------------------------------------
//# 节点标识
server-id=135
//# 开启复制功能
log-bin=mysql-bin
//# 主主复制时,防止主主 id 冲突
//# id 自增步长
auto_increment_increment=2
//# 起始 id 偏移量
auto_increment_offset=1
//# 忽略大小写
lower_case_table_names=1
//# 需要同步的数据库, mstest
//# binlog-do-db=mstest
//# 需