mysql笔记:10. 日志

文章目录

  • 一、日志概述
  • 二、错误日志
    • 1. 启动
    • 2. 查看
    • 3. 删除
  • 三、二进制日志
    • 1. 启动
    • 2. 查看
    • 3. 删除
  • 四、通用查询日志
    • 1. 启动
    • 2. 查看
    • 3. 删除
  • 五、慢查询日志
    • 1. 启动
    • 2. 查看
    • 3. 删除

日志是MySQL数据库的重要组成部分,日志文件中记录着MySQL数据库运行期间发生的变化。MySQL有不同类型的日志文件,包括错误日志、通用查询日志、二进制日志以及慢查询日志等。对于管理工作而言,这些日志文件是不可缺少的。

一、日志概述

MySQL日志主要分为四类。

  1. 错误日志:记录服务的启动、运行或停止MySQL服务时出现的问题。
  2. 查询日志:记录建立的客户端连接和执行的语句。
  3. 二进制日志:记录所有更改数据的语句,可以用于数据复制。
  4. 慢查询日志:记录所有执行时间超过long_query_time的所有查询或不使用索引的查询。

在默认情况下,所有日志创建于MySQL数据目录中。通过刷新日志,可以强制MySQL关闭和重新打开日志文件。当执行一个FLUSH LOGS语句或执行mysqladmin flush-logsmysqladmin 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. 删除

直接删除日志文件即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/730096.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二维码门楼牌管理系统应用场景:商业与零售业发展的助推器

文章目录 前言一、二维码门楼牌管理系统的基本功能二、商业和零售业中的应用场景三、二维码门楼牌管理系统的优势分析四、结论 前言 在数字化时代的浪潮中,二维码门楼牌管理系统凭借其独特的优势,正在逐步成为商业和零售业发展的新宠。它不仅能够为商家…

测试环境搭建整套大数据系统(九:docker学习)

一:为什么学习dockder? 对于组件的搭建和部署,可以简化。 二:什么是docker? docker是一个平台。 三:怎么使用docker? 1. 安装,切换仓库。 安装 curl -fsSL https://test.docke…

家用洗地机哪个型号好用?介绍几个值得考虑的品牌

作为家里的主要清洁工,我一直以来都是负责家里的清洁工作。我经常使用吸尘器和扫地机器人来轮流清洁,虽然效果还不错,但是这种方式太费时间和精力了。特别是在脸上厨房里做完饭和孩子吃完饭后留下的残渣时,我总是需要用传统的拖多…

http请求重定向

client.Do会检查重定向,从而导致报错的url不是原先传进去的。 golang开发:http请求redirect的问题_golang redirect-CSDN博客

华为云开年采购季云上云下一体化安全解决方案,为企业筑牢云上“安全网”

随着数字化转型的加速,越来越多的企业正在拥抱互联网,将业务拓展到线上。然而,网络安全问题也随之凸显。如何守好“安全防线”,是企业创新发展亟需解决的问题。为此,华为云开年采购季带来了安全可靠的云上云下一体化安…

文献学习-13-机器人顶刊IJRR近期国人新作(2024.3)

一、IJRR简介 The International Journal of Robotics Research(IJRR)是机器人领域的高水平学术期刊,专注于发布关于机器人技术和相关领域的最新研究成果。IJRR创刊于1982年,是该领域的第一本学术刊物,2022-2023最新影…

掼蛋的牌型与规律(上篇)

掼蛋是一项配合类的棋牌竞技游戏,掼蛋的最大魅力以及最集中的特点在于变化,在于组牌的变数。有的掼蛋新手往往先把牌配死,并且直接决定好出牌计划,然后守株待兔。掼蛋的取胜之道在于静态组合加上动态变化。本文主要介绍一下掼蛋的…

ios版本小于13.4.1的手机需要前端对其调整图片方向,上传拍照照片总是方向不对

这类iphone中手机竖着拿然后逆时针旋转90才是正确的拍照姿势 这时候拍出来的照片展示在canvas中是不会被旋转的。如果以其他角度拍照时,就会发生旋转。 function imgToCanvasWithOrientation(img, width, height, orientation) {let canvas document.createEleme…

【代码随想录算法训练营Day30】回溯算法总结(题暂时跳过,做完补上)

❇️Day 30 第七章 回溯算法 part06 ✴️今日内容 332.重新安排行程51.N皇后37.解数独总结 今天这三道题都非常难,那么这么难的题,为啥一天做三道?因为 一刷 也不求大家能把这么难的问题解决,所以 大家一刷的时候,就…

基于MPPT的太阳能光伏电池simulink性能仿真,对比扰动观察法,增量电导法,恒定电压法

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 扰动观察法 (Perturb and Observe Method) 4.2 增量电导法 (Incremental Conductance Method) 4.3 恒定电压法 (Constant Voltage Method) 5.完整工程文件 1.课题概述 在simulink中,实…

力扣题库第5题:盛最多水的容器

题目内容: 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不…

基于51单片机风速仪风速测量台风预警数码管显示

基于51单片机风速仪风速测量报警数码管显示 1. 主要功能:2. 讲解视频:3. 仿真4. 程序代码5. 设计报告🔗6. 下载链接资料下载链接: 基于51单片机风速仪风速测量报警数码管显示( proteus仿真程序设计报告讲解视频) 仿真图…

C/C++内存管理【C++】

目录 一、 C/C内存分布1. C内存管理方式(1) new和delete操作内置类型(2) new和delete操作自定义类型 二、 operator new与operator delete函数三、 malloc/free和new/delete的区别四、内存泄漏 一、 C/C内存分布 C/C程序的内存布局会因编译器和操作系统而有所不同,但…

Vue2 基础一指令

代码下载 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,官网。 Vue基本使用 如何利用Vue将hello world 渲染到页面上 1、需要提供标签用于填充数据,在标签中使用插值语法的形式 即 {{}} 进行填充数据,插…

Linux:好用的Linux指令

进程的Linux指令 1.查看进程信息 ​​​​ps ajx | head -1 && ps ajx | grep 进程名创建一个进程后输入上述代码,会打印进程信息,当我们在code.exe中写入打印pid,ppid,这里也和进程信息一致。 while :; do ps ajx | he…

【Java Web】HTML瞄一眼就懂!

目录 一、HTML概念 二、什么是标记语言 三、HTML文档创建 四、HTML基本结构 五、专业词汇 六、HTML常用标签 七、页面布局 八、页面显示特殊符号 一、HTML概念 HTML文件本质上是文本文件,而普通的文本文件只能单纯的显示字符而HTML文件则通过使用HTML标签可…

linux下mysql安装及主从配置的设置

目录 检测系统安装步骤MySQL源安装MySQL源已安装:完毕!安装MySQL查看是否安装成功已安装的软件包启动MySQL并检查MySQL运行状态获取MySQL登录密码并修改默认密码主节点配置(1)修改/etc/my.cnf文件,并重启服务(2)创建从节点访问用户(3)查看主节点状态

mybatis-plus saveOrUpdateBatchByUniquekey 插入或更新按自定义唯一索引

mybatis-plus 自带的saveOrUpdateBatch 是以主键来判断插入 或更新的, 如何根据唯一索引实现呢? ## mysql 定义唯一索引 unique key: (salary_date, tenant_id, type, id_no)Transactional(rollbackFor Exception.class) Override public boolean save…

前端Sonar部署的步骤

下载并安装Java jdk,Sonar运行必须依赖jdk。下载sonarqube和sonar-scanner。配置环境变量,打开.bash_profile文件,添加以下内容: # jdkexport JAVA_17_HOMEjdk安装地址export JAVA_HOME$JAVA_17_HOMEexport PATH$JAVA_HOME/bin:$P…

xlrd库的安装和应用

目录 前言 安装 注意 优点 通用知识 函数方法 使用范例 使用心得 前言 xlrd库特别适合需要处理Excel文件中数据的任务. 同时,需要注意的是,xlrd 主要用于读取Excel文件。如果需要写入Excel文件,可以结合其他库如 openpyxl或者xlsxwri…