数据库备份–主从复制
6.1.1 数据库冷备份
手动的将数据库文件,定期进行转储.
缺点:
1.效率低
2.有可能丢失数据
原因: 数据库冷备份 是公司恢复数据最后有效的手段.
6.1.2 数据库热备份
备份原理:
1.当数据库修改时,会将修改的信息,写入二进制日志文件中(二进制文件默认是关闭的).
2.当二进制日志文件中有数据时,数据库从库会通过IO线程读取二进制文件信息.
3.IO线程将读到的数据写到中继日志中.
4.Sql线程将中继日志中的文件 写到从数据库中,最终实现数据库主从同步.
步骤一:
准备两个服务器,分别安装mariadb
分别修改二进制日志文件
vim /etc/my/cnf
步骤二:
分别修改主从库的修改二进制日志文件 添加红框中的配置,主从库的server-id不同
步骤三:
重启数据库检查二进制日志
步骤四:实现数据库主从同步
用sql命令实现主从同步
1.在主库中查看主库状态
show master status;
2.在每一台从库中配置主从挂载,指定主库
/*我是130 从库 IP/PORT/USER/PASSWROD/二进制日志/pos*/
CHANGE MASTER TO MASTER_HOST="192.168.126.129", //主库ip
MASTER_PORT=3306,
MASTER_USER="root", //数据库名
MASTER_PASSWORD="root", //数据库密码
MASTER_LOG_FILE="mysql-bin.000001", //主机的二进制文件
MASTER_LOG_POS=245; //主机状态端口号position
/*开启主从服务*/
START SLAVE;
/*检查主从服务状态*/
SHOW SLAVE STATUS;
/*如果启动不成功 执行如下步骤 检查最后几项的报错信息
之后修改配置文件. 关闭主从服务.之后重新执行挂载命令
*/
STOP SLAVE;
最后:在主库中添加数据库表,检查从库是否同步.
注意:
删除二进制文件信息要把所有mysq-bin.*下所有文件都删除,否则mysql启动不成功