mysql笔记:10. 日志
文章目录
- 一、日志概述
- 二、错误日志
- 1. 启动
- 2. 查看
- 3. 删除
- 三、二进制日志
- 1. 启动
- 2. 查看
- 3. 删除
- 四、通用查询日志
- 1. 启动
- 2. 查看
- 3. 删除
- 五、慢查询日志
- 1. 启动
- 2. 查看
- 3. 删除
日志是MySQL数据库的重要组成部分,日志文件中记录着MySQL数据库运行期间发生的变化。MySQL有不同类型的日志文件,包括错误日志、通用查询日志、二进制日志以及慢查询日志等。对于管理工作而言,这些日志文件是不可缺少的。
一、日志概述
MySQL日志主要分为四类。
- 错误日志:记录服务的启动、运行或停止MySQL服务时出现的问题。
- 查询日志:记录建立的客户端连接和执行的语句。
- 二进制日志:记录所有更改数据的语句,可以用于数据复制。
- 慢查询日志:记录所有执行时间超过long_query_time的所有查询或不使用索引的查询。
在默认情况下,所有日志创建于MySQL数据目录中。通过刷新日志,可以强制MySQL关闭和重新打开日志文件。当执行一个FLUSH LOGS
语句或执行mysqladmin flush-logs
或mysqladmin refresh
时,将刷新日志。
如果正在使用MySQL复制功能,在复制服务器上可以维护更多日志文件,这种日志称为接替日志。
启动日志功能会降低MySQL数据库的性能。同时,日志会占用大量的磁盘空间。
二、错误日志
错误日志记录着MySQL服务器的启动和停止过程中的信息、服务器在运行过程中发生的故障和异常情况的相关信息、事件调试器运行一个事件时产生的信息、从服务器上启动服务器进程时产生的信息等。
1. 启动
在默认状态下错误日志功能是开启的,并且不能被禁止。错误日志信息也可以通过修改my.ini文件自行配置。它所记录的信息是通过log-error和log-warnings来定义的。其中log-error定义是否启用错误日志的功能和错误日志的存储位置,log-warnings定义是否将警告信息也定义到错误日志中。
–log-error=[file-name]是用来指定错误日志存放的位置。如果没有指定,则默认hostname.err作为文件名,默认存放在DATADIR目录中。
2. 查看
错误日志是以文本文件形式存储的,可以直接使用普通文本工具打开查看。
通过show命令可以查看错误日志文件所在目录及文件名信息:
mysql> show variables like 'log_error';
3. 删除
管理员可以删除很久之前的错误日志以释放磁盘空间。
可以使用mysqladmin和flush logs来开启新的错误日志。
> mysqladmin -u username -p flush-logs
# 或
mysql> flush logs
三、二进制日志
二进制日志文件用来记录所有用户对数据库的操作。当数据库发生意外时,可以通过此文件查看在一段时间内用户所做的操作,结合数据库备份技术,即可再现用户操作,使数据库恢复。
1. 启动
二进制日志记录了所有对数据库数据的修改操作,开启二进制日志可以实现以下功能:
- 恢复(recovery):某些数据的恢复需要二进制日志。
- 复制(replication):其原理与恢复类似,通过复制和执行二进制日志使一台远程的MySQL数据库(一般称为slave或standby)与另一台MySQL数据库(一般称为master或primary)进行实时同步。
- 审计(audit):用户可以通过二进制日志中的信息来进行审计。
[mysqld]
log-bin [=path/ [filename] ]
expire_logs_days = 10
max_binlog_size = 100M
2. 查看
# 查看二进制日志是否开启
mysql> show variables like 'log_bin';# 查看二进制日志的上限值
mysql> show variables like 'max_binlog_size';# 查看二进制日志文件
mysql> show binary logs;# 查看二进制日志文件的具体信息
mysql> show binlog events in filename\G
3. 删除
开启二进制日志会对数据库整体性能有所影响,但性能损失十分有限。MySQL的二进制文件可以配置自动删除,同时MySQL也提供了安全的手工删除方法,即reset master;使用purge master logs语句删除部分二进制日志文件。
# 删除所有日志
mysql> reset master;
# 删除指定编号前的日志
mysql> purge master logs to 'filename.****';
# 删除指定日期前的日志
mysql> purge master logs before 'YYYY-MM-DD HH24:MI:SS';
四、通用查询日志
通用查询日志记录所有用户操作,包括启动和关闭服务、执行查询和更新语句等。
1. 启动
默认情况下,MySQL并没有开启通用查询日志。
# 查看通用查询日志状态
mysql> show variables like '%general%';# 开启通用查询日志
mysql> set @@global.general_log=1;
# 关闭通用查询日志
mysql> set @@global.general_log=0;
2. 查看
通用查询日志是文本文件的形式存储的,可直接打开。
3. 删除
直接删除日志文件即可。
五、慢查询日志
慢查询日志主要用来记录执行时间较长的查询语句。通过慢查询日志,可以找出执行时间较长、执行效率较低的语句,然后进行优化。
1. 启动
慢查询日志默认是关闭的。可以通过配置文件my.ini或my.cnf中的log-slow-queries选项打开,也可以在服务启动时使用–log-slow-queries[=file_name]启动。
启用慢查询日志时,需要配置long_query_time选项指定记录阈值。如果某条查询语句的查询时间超过了这个阈值,这个查询过程将被记录到慢查询日志文件中。
# my.ini或my.cnf
[mysqld]
log-slow-queries=[path / [filename] ]
log-query-time=n
默认存储在数据目录,文件名是hostname-slow.log
时间单位是秒,默认10秒。
mysql> show variables like '%slow%';
2. 查看
文本形式存储,直接查看。
3. 删除
直接删除日志文件即可。
相关文章:
mysql笔记:10. 日志
文章目录 一、日志概述二、错误日志1. 启动2. 查看3. 删除 三、二进制日志1. 启动2. 查看3. 删除 四、通用查询日志1. 启动2. 查看3. 删除 五、慢查询日志1. 启动2. 查看3. 删除 日志是MySQL数据库的重要组成部分,日志文件中记录着MySQL数据库运行期间发生的变化。M…...

代码随想录刷题笔记-Day32
1. 最大子序和 53. 最大子数组和https://leetcode.cn/problems/maximum-subarray/ 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组:是数组中的一个连续…...

指针的学习5
目录 sizeof和strlen的区别 sizeof strlen 数组和指针笔试题解析 一维数组 字符数组 二维数组 指针运算笔试题解析 题目1: 题目2: 题目3: 题目4: 题目5: 题目6: 题目7: sizeof和…...

Dynamo——常用几何形体的创建与编辑(二)
上一次,我们简单整理了一些创建几何形体的节点用法,今天我们接着整理一些,几何形体的编辑方法。 一、坐标点的平移复制 [Point.Add] 使用节点 “Vector.ByCoordinates” 生成一个向量,将该向量连接到 “Point.Add” 节点的输入端 …...

uniapp富文本编辑-editor-vue2-vue3-wangeditor
前言 不管vue2还是vue3,都推荐官方的editor组件, 官方手册 https://uniapp.dcloud.net.cn/component/editor.html除了“微信小程序”,其他小程序想要使用editor组件实现富文本编辑,很难 第三方组件wangeditor在vue2࿰…...

【java】22:try-catch 异常处理
try-catch 方式处理异常说明 public static void main(String[] args) { int num1 10; int num2 0; try { int res num1 / num2; } catch (Exception e) { System.out.println(e.getMessage()); } } 注意事项 1)如果异常发生了,则异常发生后面的代码不会执行&…...

【C语言】linux内核ip_local_out函数
一、讲解 这个函数 __ip_local_out 是 Linux 内核网络子系统中的函数,部分与本地出口的 IPv4 数据包发送相关。下面讲解这段代码的每一部分: 1. 函数声明 int __ip_local_out(struct net *net, struct sock *sk, struct sk_buff *skb): -…...

动态规划6,最大数组和,环形子数组最大和,乘积最大子数组
最大子数组和 思路: 1.经验题目要求 dp[i]表示:以 i 位置为结尾的所有子数组中的最大和 2.状态转移方程 按长度来划分,如果长度为1,那么dp[i] nums[i]; 如果长度大于1,那么当前位置的最大和就为 i-1 位置最大和 …...

js 清空数组的方法
1、直接赋值空数组 let array [1, 2, 3, 4, 5]; array []; 这种方法并不推荐,如下图所示: 虽然a数组确实变为了空数组,但这种方法只是修改了a的指向,把a指向一个新的空数组,然而[1,2,3,4,5]这个数组并没有被清除&a…...

QT中使用QProcess执行命令,实时获取数据,例如进度条
前言 因为之前写了一个接收和发送文件的脚本,然后又需要获取进度,同步到进度条中。 效果: 使用正则匹配,获取命令行命令中的以下数据,然后同步到进度条 源码demo: 非完整代码: #include <Q…...

绘图设计:用Draw.io绘制图形技巧大全(含统一建模语言UML模板)
一、常见UML模板 1.流程图 2.用例图 include是包含关系,extend是扩展关系 简而言之,include是子集指向父集;而extend是扩展用例指向基础用例(基础用例可以理解为系统核心功能,扩展用例是可选的,不是必须…...

被唤醒的“第二十条”深入人心
近来张艺谋执导的电影《第二十条》,因为它与正在召开中的全国两会所发布的《最高人民法院工作报告》联系相当紧密,加之可免费收看,网民便相互转告,于是此信息条目立即冲上了网络热搜榜,观者如潮。因为最高人民法院工作…...
PHPInfo()信息泄漏原理以及修复方法
漏洞名称:PHPInfo信息泄漏、phpinfo()函数信息泄漏 漏洞描述: phpinfo()函数返回的信息中包含了服务器的配置信息,包括: 1)PHP编译选项以及文件扩展名的相关信息; 2)php的版本信息 3&#…...

202441读书笔记|《笠翁对韵》—— 金菡萏,玉芙蓉,酒晕微酡琼杏颊,香尘浅印玉莲双
202441读书笔记|《笠翁对韵》——金菡萏,玉芙蓉,酒晕微酡琼杏颊,香尘浅印玉莲双 《作家榜名著:笠翁对韵》作者李渔,霍俊明。是所有词句都有注音的一本书,轻松学不认识的字,非常朗朗上口的对偶词…...
006-v-model原理
v-model原理 简介v-model应用在输入框上v-model应用在组件上 简介 由 属性绑定(v-bind:value“searchText”) 配合 input事件监听(v-on:input“searchText event.target.value”) 实现。 应用在组件上由 props: {value: xxx } ,this.$emit(‘input’, xxx ) 完成。…...

Ubuntu下使用DAPLink(OpenOCD)
目录 1. 下载OpenOCD源代码 2. 编译代码 2.1 运行bootstrap 2.2 安装关联库 2.3 运行./configure 2.4 运行make 2.5 运行sudo make install 3. 烧录程序 3.1 挂起MCU 3.2 写入镜像 3.3 校验镜像 通过OpenOCD实现,在Ubuntu18 64bit下验证。 1. 下载OpenOC…...

C# 中 Math.Round 数学函数
在 C# 中,Math.Round 是一个数学函数,用于对一个浮点数进行四舍五入操作。它接受一个浮点数作为输入,并返回一个最接近输入值的整数或指定小数位数的浮点数。 Math.Round 方法有多个重载,其中最常用的重载有以下两种形式…...

力扣---接雨水---单调队列
题目: 单调队列思想: 没有思路的小伙伴可以先把这个想清楚哦:力扣hot10---大根堆双端队列-CSDN博客 从上面的图就可以发现,如果柱子呈递减序列,那么不会接到雨水,只要有一个小凸起柱子,那么这个…...
微分学<4>——微分中值定理
索引 微分中值定理极值定义4.1 极大(小)值定理4.1 Fermat引理定理4.2 Rolle定理 Lagrange中值定理定理4.3 Lagrange中值定理定理4.4 Cauchy中值定理 导数对函数性质的刻画Jensen不等式 微分中值定理 极值 定义4.1 极大(小)值 若存在 x 0 x_{0} x0的邻域 U ( x 0 , δ ) U\…...

FPGA的时钟资源
目录 简介 Clock Region详解 MRCC和SRCC的区别 BUFGs 时钟资源总结 简介 7系列FPGA的时钟结构图: Clock Region:时钟区域,下图中有6个时钟区域,用不同的颜色加以区分出来 Clock Backbone:从名字也能看出来&#x…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...