news 2026/8/22 0:45:07

MySQL运维篇——日志和主从复制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL运维篇——日志和主从复制

日志

(错误日志,二进制日志,查询日志,慢查询日志)

(1)错误日志:服务器运行中发生错误时的相关信息 /var/log/

show variables like ‘%log_error%’ ; —查看日志位置

(2)二进制日志binlog:记录了所有DDL语句(数据库和表操作)和DML语句(增删改数据),不包含查询语句。

作用:灾难时数据恢复、mysql主从复制

show variables like ‘%log_bin%’ ; —是否开启,日志文件位置,日志索引

日志格式:statement、row(默认)、mixed,查看show variables like ‘%binlog_format%’ ;

--读日志语句(更新前后的数据都有) mysqlbinlog [option] logfile_name --参数-d指定数据库名称,-o忽略前n行,-v将行事件重构为sql语句 --参数-vv将行事件重构为sql语句,并输出注释信息 mysqlbinlog -v binlog.000002 --日志清理 reset master; --删除全部binlog日志,日志编号将从binlog.ooooo1重新开始 purge master logs to 'binlog.***'; --删除***编号之前的所有日志 purge master logs before 'yyyy-mm-dd hh24:mi:ss'; --删除指定时间之前产生的所有日志 --配置二进制日志的过期时间,设置后过期自动删除 show variables like '%binlog_expire_logs_seconds%';

(3)查询日志:记录所有操作语句,默认查询日志未开启。

show variables like ‘%general%’;

(4)慢查询日志:记录所有执行时间超过long_query_time参数并且扫描记录数不小于min_examined_row_limit的所有sql语句,默认未开启,默认10秒

在配置文件设置

slow_query_log=1 # 开启

long_query_time=2 # 时间参数

主从复制

主从复制:两台服务器,一台主库master,一台从库slave,将主数据库的操作通过二进制日志文件binlog传到从库,从库上对这些日志重新执行(重做),使得两者之间数据保存同步。

MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为主库,实现链状复制。

作用:主库出现问题,快速切换从库提供服务;实现读写分离,降低主库访问压力;可以从库执行备份,避免备份期间影响主库服务;

原理:主库事务提交数据变更记录在binlog——从库读取binlog写入从库的中继日志relaylog——从库重做relaylog中的事件,改变自己的数据;

搭建流程(主库上所有数据库之后的操作都会同步到从库,从binlog.000004的663位置之后开始接收,主库之前已有的历史数据没有同步,增量复制)

--ubuntu的mysql的配置文件/etc/mysql/mysql.conf.d/mysqld.cnf --1、主库修改配置文件并重启 server-id=1 --必须唯一 log-bin=mysql-bin --开启二进制日志 binlog_format=row --设置二进制日志row格式 systemctl restart mysql --2、进入主库mysql,创建复制用户(从库使用来复制binlog) mysql -uroot -p CREATE USER 'repl'@'%' IDENTIFIED BY '123456'; GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%'; --授予仅主从复制的权限 FLUSH PRIVILEGES; --刷新权限 --3、查看binlog位置(File binlog.000004 position 663) SHOW MASTER STATUS; --3.1(如果需要做全量同步,主库加全局锁执行mysqldump+文件导入) --4、从库修改配置文件并重启 server-id=2 read_only=1 --只读 systemctl restart mysql --5、进入从库mysql,设置主库配置(主库IP地址,连接主库的用户名和密码,binlog文件名和位置) CHANGE MASTER TO MASTER_HOST='192.168.10.10',MASTER_USER='repl',MASTER_PASSWORD='123456', MASTER_LOG_FILE='mysql-bin.000003',MASTER_LOG_POS=154; --6、启动从库复制线程,查看复制状态(两个running是yes) START SLAVE; SHOW SLAVE STATUS\G;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 21:08:03

5大实用技巧:用downkyi打造高效视频下载工作流

5大实用技巧:用downkyi打造高效视频下载工作流 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等)。…

作者头像 李华
网站建设 2026/8/21 23:34:17

Switch版最全模拟器系统:LAKKA懒人整合包最新版

LAKKA懒人整合包详细介绍:系统基础:LAKKA是一个基于RetroArch的开源模拟器系统,专为Nintendo Switch平台设计。它利用Switch的强大硬件性能,模拟多种经典游戏主机。整合内容:整合了包括NES、SNES、Game Boy、Game Boy …

作者头像 李华
网站建设 2026/8/22 0:29:02

YOLOv11 改进 - C2PSA | C2PSA融合Mona多认知视觉适配器(CVPR 2025):打破全参数微调的性能枷锁:即插即用的提点神器,引领视觉微调新突破

前言 本文介绍了新型视觉适配器微调方法Mona,并将其集成到YOLOv11中。传统全参数微调成本高、存储负担重且有过拟合风险,现有PEFT方法性能落后。Mona仅调整5%以内的骨干网络参数,在多个视觉任务中超越全参数微调。其核心亮点包括参数效率高、性能突破和即插即用。适配器模块…

作者头像 李华
网站建设 2026/8/21 20:15:50

YOLOv11 改进 - SPPF模块 | 替代SPPF, Mona多认知视觉适配器(CVPR 2025):打破全参数微调的性能枷锁:即插即用的提点神器

前言 本文介绍了新型视觉适配器微调方法Mona,并将其集成到YOLOv11中。传统全参数微调成本高、存储负担重且有过拟合风险,现有PEFT方法性能落后。Mona仅调整5%以内的骨干网络参数,在多个视觉任务中超越全参数微调。其核心亮点包括参数效率高、性能突破和即插即用。适配器模块…

作者头像 李华
网站建设 2026/8/21 1:17:50

企业级RPM组件变更测试全攻略:从虚拟化到容器化的深度实践

引言:RPM测试为何如此关键? 在Linux DevOps实践中,RPM包的管理与测试往往是决定系统稳定性的关键环节。每一次组件的升级、修复或功能增强,都可能引入意想不到的依赖冲突、配置变更或性能问题。据统计,超过30%的生产环…

作者头像 李华
网站建设 2026/8/21 22:56:26

MongoDB 索引

MongoDB 索引 引言 MongoDB 是一个高性能、可扩展的文档存储数据库,它提供了灵活的数据模型和强大的查询能力。在 MongoDB 中,索引是一个非常重要的概念,它能够显著提高数据库的查询效率。本文将深入探讨 MongoDB 索引的原理、类型、创建方法以及优化策略。 索引概述 索…

作者头像 李华