前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL OCP试题解析(4)

MySQL OCP试题解析(4)

作者头像
俊才
发布2025-05-10 09:15:56
发布2025-05-10 09:15:56
11100
代码可运行
举报
文章被收录于专栏:数据库干货铺数据库干货铺
运行总次数:0
代码可运行

今天继续本系列的第四篇,由于内容比较简单,就直接开放,后续的篇幅中会每篇解析5题来加快学习速度。旨在通过练习OCP试题学习相关知识点。

原题如下:

代码语言:javascript
代码运行次数:0
运行
复制
Q4.You want to log only the changes made to the database objects and data on the MySQL system. Which log will 
do this by default? 
A)error log 
B)slow query log 
C)general query log 
D)binary log 
E)audit log 

题目是问,在MySQL系统中,哪个日志默认记录数据库对象和数据的变更。选项有五个:错误日志、慢查询日志、通用查询日志、二进制日志、审计日志

一、 选项解析

1. Error Log(错误日志)

错误日志主要用于记录 MySQL 服务器启动、运行或关闭过程中的错误信息、警告和关键事件(如硬件故障或权限问题)。它不记录数据变更操作,因此不符合题意。

2. Slow Query Log(慢查询日志)

慢查询日志记录执行时间超过设定阈值的查询语句(如 long_query_time 设置为 2 秒),用于性能优化。它仅记录慢查询,而非所有数据变更操作,因此排除。

3. General Query Log(通用查询日志)

通用查询日志记录所有客户端连接和执行的 SQL 语句,包括 SELECT 等非变更操作。虽然包含部分数据修改语句,但默认不启用且记录范围过广,并非专门用于变更追踪。

4. Binary Log(二进制日志)

二进制日志是唯一符合题意的选项。它默认记录所有对数据库的 数据变更操作(如 INSERT、UPDATE、DELETE、DDL 等),并以二进制格式存储。

  • 核心作用:支持数据恢复、主从复制和增量备份。
  • 记录逻辑:在事务提交后生成,确保数据变更的持久性和可追溯性。
  • 默认启用:与审计日志不同,二进制日志在 MySQL 中默认开启(需配置 log_bin 参数)。

5. Audit Log(审计日志)

审计日志记录用户操作(如登录、权限变更等),用于安全审计和合规性检查。但它是 MySQL 企业版功能,社区版需额外插件支持,且 默认不启用,因此不符合题意。

答案: 根据题目要求“默认”、"记录数据库对象和数据的变更",正确答案是 D) binary log(二进制日志)

二、 对比及小结

以下再对上面5个日志进行默认启用及用途的对比,结果如下表所示:

日志类型

记录内容

默认启用

用途

Binary Log

所有数据变更操作(DDL/DML)

数据恢复、主从复制

Error Log

错误、警告和服务器状态信息

故障诊断

General Log

所有 SQL 语句(含非变更操作)

全量查询追踪

Slow Query Log

执行时间过长的查询

性能优化

Audit Log

用户操作(企业版功能)

安全审计

另外,关于General Log和Slow Query Log的写入顺序,之前还通过源码调试进行解析

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-05-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据库干货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档