MySQL 日志

目录

一、日志概述

二、二进制日志

1、开启二进制日志

2、查看二进制文件

3、删除二进制日志文件

4、恢复二进制日志

5、暂时停止二进制日志功能

三、错误日志

1、启动和设置错误日志

2、查看错误日志

3、删除错误日志

四、通用查询日志

五、慢查询日志


一、日志概述

MySQL日志记录了MySQL数据库日常操作和错误信息。MySQL有不同类型的日志文件(各自存储了不同类型的日志),从日志当中可以查询到MySQL数据库的运行情况、用户操作、错误信息等,可以为MySQL管理和优化提供必要的信息。对于MySQL的管理工作而言,这些日志文件是不可缺少的。

日志分为4类:

1)错误日志:记录MySQL服务的启动、运行或停止MySQL服务时出现的问题。

2)查询日志:记录建立的客户端连接和执行的语句。

3)二进制日志:记录所有更改数据的语句,可以用于数据复制

4)慢查询日志:记录所有执行时间超过long_query_time的所有查询或不适用索引的查询。

二、二进制日志

1、开启二进制日志

在/etc/my.cnf文件【mysqld】标签下输入如下命令

#第一步
[root@master ~]# vim /etc/my.cnf
#第二步--在该文件里添加
log-bin=[mysql-bin]
server_id=100

server_id=[服务器序号任意,但是不能重复]。

 然后再重启mysqld服务器

[root@master ~]# systemctl restart mysqld

查看服务i进程状态----log_bin

mysql> show variables like 'log_%';
+----------------------------------------+----------------------------------+
| Variable_name                          | Value                            |
+----------------------------------------+----------------------------------+
| log_bin                                | ON                               |
| log_bin_basename                       | /var/lib/mysql/[mysql-bin]       |
| log_bin_index                          | /var/lib/mysql/[mysql-bin].index |
| log_bin_trust_function_creators        | OFF                              |
| log_bin_use_v1_row_events              | OFF                              |
| log_builtin_as_identified_by_password  | OFF                              |
| log_error                              | /var/log/mysqld.log              |
| log_error_verbosity                    | 3                                |
| log_output                             | FILE                             |
| log_queries_not_using_indexes          | OFF                              |
| log_slave_updates                      | OFF                              |
| log_slow_admin_statements              | OFF                              |
| log_slow_slave_statements              | OFF                              |
| log_statements_unsafe_for_binlog       | ON                               |
| log_syslog                             | OFF                              |
| log_syslog_facility                    | daemon                           |
| log_syslog_include_pid                 | ON                               |
| log_syslog_tag                         |                                  |
| log_throttle_queries_not_using_indexes | 0                                |
| log_timestamps                         | UTC                              |
| log_warnings                           | 2                                |
+----------------------------------------+----------------------------------+
21 rows in set (0.00 sec)

2、查看二进制文件

mysql> show binary logs;
+--------------------+-----------+
| Log_name           | File_size |
+--------------------+-----------+
| [mysql-bin].000001 |       154 |
+--------------------+-----------+
1 row in set (0.01 sec)

3、删除二进制日志文件

1)删除所有二进制日志文件

reset master;

2) 删除指定的二进制日志文件

#第一种删除指定二进制文件
purge {master | binany} logs to '日志文件名';
#第二种删除指定日期之前的所有日志文件
purge {master | binany} logs before '日期';

4、恢复二进制日志

基本语法

mysqlbinlog [option] 日志文件名 | mysql -u用户名 -p密码

option重要参数:

--start-date、--stop-date:可以指定恢复数据库的起始时间和结束时间。

--start-position、-stop-position:可以指定恢复数据的开始位置和结束位置。

5、暂时停止二进制日志功能

语法

set sql_log_bin=0   #暂停
set sql_log_bin=1   #恢复

三、错误日志

1、启动和设置错误日志

在/etc/my.cnf文件【mysqld】标签下输入如下命令

#第一步
[root@master ~]# vim /etc/my.cnf
#第二步--在该文件里添加
log-error=[存放路径]

配置完保存,再重启mysql服务。

2、查看错误日志

语法

show variables like '%log_error%';

3、删除错误日志

mysqladmin -u root -p密码 'flush-logs';

 需要在服务器客户端进行

例如

[root@master ~]# mysqladmin -u root -pRedHat@123 'flush-logs';
mysqladmin: [Warning] Using a password on the command line interface can be insecure.

四、通用查询日志

启动和设置通用查询日志

在/etc/my.cnf文件【mysqld】标签下输入如下命令

#第一步
[root@master ~]# vim /etc/my.cnf
#第二步--在该文件里添加
[mysqld]
log=[存放路径]

配置完保存,再重启mysql服务。

五、慢查询日志

MySQL如果启用了 slow_query_log=ON 选项,就会记录执行时间超过long_query_time的查询(初使 表锁定的时间不算作执行时间)。日志记录文件为slow_query_log_file[=file_name],如果没有给出 file_name值, 默认为主机名,后缀为-slow.log。如果给出了文件名,但不是绝对路径名,文件则写入 数据目录。

# 默认没有启用慢查询,为了服务器调优,建议开启
mysql> SHOW GLOBAL VARIABLES LIKE '%slow_query_log%';
# 开启方法,当前生效,永久有效配置文件中设置
SET GLOBAL slow_query_log=ON;
# 使用 mysqldumpslow 命令获得日志中显示的查询摘要来处理慢查询日志
# mysqldumpslow slow.log
# 那么多久算是慢呢?
# 如果查询时长超过long_query_time的定义值(默认10秒),即为慢查询:
mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time';

日志会影响MySQL的性能,又会占用大量磁盘空间,所有在有需要的时候才开启对于日志,例如在开发环境中优化查询效率低的语句,可以开启慢查询日志,如果需要记录用户的所有插叙操作,可以开启通用查询日志,如果需要记录数据的变更,可以开启二进制日志;错误日志时默认开启的。

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

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

相关文章

数组分割(2023省蓝桥杯)n种讨论 JAVA

目录 1、题目描述:2、前言:3、动态规划(bug):3、递归 剪枝(超时):4、数学(正解): 1、题目描述: 小蓝有一个长度为 N 的数组 A [A0, A1,…, AN−…

【⑭MySQL | 数据类型(二)】字符串 | 二进制类型

前言 ✨欢迎来到小K的MySQL专栏,本节将为大家带来MySQL字符串 | 二进制类型类型的分享✨ 目录 前言5 字符串类型6 二进制类型总结 5 字符串类型 字符串类型用来存储字符串数据,还可以存储图片和声音的二进制数据。字符串可以区分或者不区分大小写的串比…

PDF如何转ppt?PDF转ppt的方法

PDF是一种广泛应用于文档传输和存储的格式,然而,在某些情况下,我们可能需要将PDF文件转换为PPT,以便更加灵活地编辑和展示内容。那么,PDF如何转ppt呢?在本文中,我们将介绍几种常用的方法和工具&#xff0c…

总结:Git 撤销操作

1、还未添加到暂存区:git checkout -- filename 执行命令后,会回退到未修改之前的状态 2、已经添加到暂存区:git reset HEAD filename 执行命令后,会回退到工作区之前的状态 3、已经 commit,但是还未 push git reset…

VLOOKUP

VLOOKUP简单应用 VLOOKUP(A1,B:B,1,FALSE) 是查询A1这子格子的数据在B这一列里面有没有找到相同数据的值,如果有的话就放在当前格子里面去 如果没有的话就是#NA VLOOKUP(A1,F:G,2,FALSE) 是查询A1这子格子的数据在F列查相同的数据,然后再取G列这一行后面的这个格子的数据放到…

【算法刷题之哈希表(2)】

目录 1.leetcode-454. 四数相加 II2.leetcode-383. 赎金信(1)暴力解法(2)哈希法 3.leetcode-205. 同构字符串(1)哈希法(2)直接对比查找 4.leetcode-128. 最长连续序列5.总结 1.leetc…

mysql-sql性能分析工具

一、sql执行频率 MySQL 客户端连接成功后,通过 show [session|global] status 命令可以提供服务器状态信息。通过如下指令,可以查看当前数据库的INSERT、UPDATE、DELETE、SELECT的访问频次: -- session 是查看当前会话 ; -- global 是查询全…

【硕士论文完美复现】【价格型需求响应】基于需求侧响应的配电网供电能力综合评估(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

七大排序算法详解

1.概念 1.排序的稳定性 常见的稳定的排序有三种:直接插入排序,冒泡排序,归并排序 对于一组数据元素排列,使用某种排序算法对它进行排序,若相同数据之间的前后位置排序后和未排序之前是相同的,我们就成这种…

vue3 vite使用 monaco-editor 报错

报错:Unexpected usage at EditorSimpleWorker.loadForeignModule 修改配置: "monaco-editor-webpack-plugin": "^4.2.0",删除不用 版本: "monaco-editor": "^0.28.1", 修改如下: opti…

stm32 无刷电机 V/F控制(无刷电机变频控制)以及与foc(矢量控制)的区别

无刷电机有三种控制方式,方波控制,foc控制以及变频控制,前两章我们讲解了方波和foc的控制方法,今天我们一起来讲一讲什么是无刷电机的变频控制(VF)以及变频控制的优势是什么。 实验用的硬件还是KY_Motor的无…

IDEA远程开发

IDEA远程开发 前期准备 IDEA的远程开发是在本地去操昨远程服务器上的代码,所以我们先需要准备一台服务器,在此我使用vmware虚拟出ubuntu-20.04.6的Server版本,以便后面演示。 Ubuntu的Java环境配置 JDK8 sudo apt install openjdk-8-jdkmaven sudo apt instal…

三星申请新商标:未来将应用于智能戒指,作为XR头显延伸设备

三星最近向英国知识产权局提交了名为“Samsung Curio”的新商标,这预示着三星正积极扩展可穿戴设备生态。该商标被分类为“Class 9”,这表明它有可能被用于未来的智能戒指。 据报道,三星计划将智能戒指作为XR头显设备的延伸,与苹果…

面试题-React(六):React组件和生命周期

一、React组件 React组件简介: React组件是构建用户界面的基本单元。它们将界面拆分成独立、可重用的部分,使得代码更加模块化、可维护性更高。React组件可以是函数组件或类组件,它们接收输入的数据(称为props)并返回…

基于PaddlePaddle实现的声纹识别系统

前言 本项目使用了EcapaTdnn、ResNetSE、ERes2Net、CAM等多种先进的声纹识别模型,不排除以后会支持更多模型,同时本项目也支持了MelSpectrogram、Spectrogram、MFCC、Fbank等多种数据预处理方法,使用了ArcFace Loss,ArcFace loss…

ETLCloud轻量级数据中台解决方案

引言 随着信息时代的到来,数据已经成为企业的重要资源,如何高效地管理、分析和应用数据变得尤为关键。然而,许多企业在构建数据中台时面临着高昂的成本、复杂的架构和漫长的实施周期等问题。为了解决这些挑战,我们推出了ETLCloud…

java八股文面试[java基础]——CGLIB动态代理与JDK动态代理

CGLIB CGLIB简介: 什么是CGLIB CGLIB是一个强大的、高性能的代码生成库。其被广泛应用于AOP框架(Spring、dynaop)中,用以提供方法拦截操作。Hibernate作为一个比较受欢迎的ORM框架,同样使用CGLIB来代理单端&#xff…

利用LLM模型微调的短课程;钉钉宣布开放智能化底座能力

🦉 AI新闻 🚀 钉钉宣布开放智能化底座能力AI PaaS,推动企业数智化转型发展 摘要:钉钉在生态大会上宣布开放智能化底座能力AI PaaS,与生态伙伴探寻企业服务的新发展道路。AI PaaS结合5G、云计算和人工智能技术的普及和…

文心一言 VS 讯飞星火 VS chatgpt (81)-- 算法导论7.4 6题

六、如果用go语言&#xff0c;考虑对 PARTITION 过程做这样的修改:从数组 A 中随机选出三个元素&#xff0c;并用这三个元素的中位数(即这三个元素按大小排在中间的值)对数组进行划分。求以a 的函数形式表示的、最坏划分比例为 a:(1-a)的近似概率&#xff0c;其中 0<a<1。…

卡尔曼滤波学习笔记

Kalman Filter Ⅰ、直观理解1、描述2、例子 Ⅱ、适用范围1、线性系统2、噪声服从高斯分布 Ⅲ、相关公式1、原始公式2、预测公式3、更新公式4、初值赋予5、总结 Ⅳ、应用例子Ⅴ、代码实现Ⅵ、公式理解1、协方差矩阵的理解1.1 协方差1.2 协方差矩阵1.3、相关数学公式 2、状态方程…