当前位置: 首页 > news >正文

徐水网站建设上海seo外包公司

徐水网站建设,上海seo外包公司,肇庆企业推广,宝安高端网站建设哪家公司好1 错误日志 错误日志(Error Log):错误日志记录了MySQL引擎在运行过程中出现的错误和异常情况。这些错误可能包括启动和关闭问题、数据库崩溃、权限问题等。错误日志对于排查和解决MySQL引擎问题非常有帮助。 改日志默认开启,默认存…

1 错误日志

错误日志(Error Log):错误日志记录了MySQL引擎在运行过程中出现的错误和异常情况。这些错误可能包括启动和关闭问题、数据库崩溃、权限问题等。错误日志对于排查和解决MySQL引擎问题非常有帮助。

改日志默认开启,默认存放目录/var/log,默认日志文件名称`mysqld.log。查看日志文件位置:

show variables like '%log_error%';

mysql> show variables like ‘%log_error%’;

Variable_nameValue
binlog_error_actionABORT_SERVER
log_errorstderr
log_error_serviceslog_filter_internal; log_sink_internal
log_error_suppression_list
log_error_verbosity2
  • 该mysql为docker容器中安装运行,位置为标准的错误输出。

下面我们通过修改auto.cnf中UUID让mysql启动报错,来演示错误。

/var/lib/mysql/auto.cnf内容如下所示:

[auto]
server-uuid=1ceab188-df23-11ed-ab6f-0242ac110002

mysql服务器uuid唯一且位数固定,现在我们删去最后一位,再次启动mysql

在这里插入图片描述

报错信息显示auto.cnf中UUID非法无效,现在我们改回之前的server-uuid,问题来了,我们的mysql之前未挂载msyql目录,现在mysql容器启动不起来,不能进入容器,修改不了auto.cnf文件了怎么办呢?

在这里插入图片描述

首先要记住一点,你看不到不表示它没有。

第二步:把mysql文件夹下载到本地,右键save本地

在这里插入图片描述

第三步:修改mysql/auto.cnf为原server-uuid,右键import 在上传至原位置。

2 二进制日志

2.1 简介

二进制日志(BINLOG)记录所有的DDL(数据定义语言)语句和MDL(数据操纵语言)语句,但不包括(SELECT、SHOW)语句。

  • 作用:
    • 灾难时数据恢复;
    • Mysql的主从复制;

二进制日志查看

show variables like '%log_bin%';
Variable_nameValue
log_binON
log_bin_basename/var/lib/mysql/binlog
log_bin_index/var/lib/mysql/binlog.index
log_bin_trust_function_creatorsOFF
log_bin_use_v1_row_eventsOFF
sql_log_binON
  • Log_bin:二进制日志开关,mysql8.0默认开启;
  • log_bin_basename: 二进制日志文件存放路径和基础文件名binlog;
  • log_bin_index:二进制日志文件对应的索引记录

2.2 日志格式

Mysql服务器提供多种格式来记录二进制日志,具体格式及特点如下:

日志格式含义
STATEMENT基于SQL语句的日志记录,记录的是SQL语句,对数据修改的SQL都会记录在日志中。
ROW基于行的日志记录,记录的是每一行的数据变更。(默认)
MIXED混合STATEMNET和ROW记录,默认采用STATEMENT记录,在某些特殊的情况下自动切换ROW记录。

查看日志格式

show variables like '%binlog_format%';
binlog_format | ROW 

2.3 日志查看

由于日志以二进制存储,不能直接读取,需要通过二进制日志查询工具mysqlbinlog查看,具体语法

mysqlbinlog [参数选项] logfilename
参数选项:-d	指定数据库名称,只列出指定数据库相关操作。-o 	忽略掉日志文件中的前n行-v	将行事件(数据变更)重构为sql语句-w	将行事件(数据变更)重构为sql语句,并输出注释信息
  • 基于行的日志记录

对score表执行如下sql

update score set math = math+1;

查看日志文件binlog.000071,

mysqlbinlog -v binlog.000071### UPDATE `gaogzhen`.`score`
### WHERE
###   @1=1
###   @2='Java'
###   @3=66
###   @4=88
###   @5=95
### SET
###   @1=1
###   @2='Java'
###   @3=67
###   @4=88
###   @5=95
### UPDATE `gaogzhen`.`score`
### WHERE
###   @1=2
###   @2='Rose'
###   @3=90
###   @4=66
###   @5=99
### SET
###   @1=2
###   @2='Rose'
###   @3=91
###   @4=66
###   @5=99
### UPDATE `gaogzhen`.`score`
### WHERE
###   @1=3
###   @2='Java'
###   @3=98
###   @4=77
###   @5=80
### SET
###   @1=3
###   @2='Java'
###   @3=99
###   @4=77
###   @5=80
  • where 记录是的更新前的数据;set记录更新后的数据。

  • @1表示第一列

  • 基于STATEMENT的日志格式

在my.cnf中设置

binlog_format=STATEMENT

重启mysql,生成新的日志文件,执行相同的sql操作,再次查看日志内容

update score set math=math+1

2.4 日志删除

对于比较繁忙的业务系统,每天生成的binlog数量巨大,如果长时间不清除,将会占用大量磁盘空间。可以通过以下几种方式清理:

指令含义
reset master删除全部binlog日志,删除之后,日志编号,将从binlog.000001开始
purge master logs to ‘binlog.*****’删除* 编号之前的日志
purge master logs before ‘yyyy-mm-dd hh24:mi:ss’删除指定时间之前的日志

也可以在mysql的配置文件中配置二进制日志的过期时间,设置之后,二进制日志过去会自动删除

show variables like '%binlog_expire_logs_seconds%';binlog_expire_logs_seconds | 2592000 默认30天

3 查询日志

查询日志中记录了客户端的所有操作语句,而二进制日志不包含查询数据的SQL语句。默认情况下,查询日志是未开启的。如果需要开启查询日志,可以开启以下设置。

show variables like '%general%'
Variable_nameValue
general_logOFF
general_log_file/var/lib/mysql/a584ba590640.log

第一步my.cnf配置查询日志

general_log=ON
general_log_file=/var/lib/mysql/mysql_query.log

第二步执行sql操作,查看配置的查询日志

tail -f mysql_query.log

如下图所示:

在这里插入图片描述

在业务繁忙的系统中开启查询日志,查询日志会非常大,如果非不要不建议开启。

4 慢查询日志

慢查询日志记录了所有时间超过参数long_query_time设置值并且扫描记录数不小于min_examined_row_limit的所有的SQL语句的日志,默认未开启。long_query_time默认10s,最小为0,精度可以到微妙。

第一步配置my.cnf中慢查询

slow_query_log=1
slow_query_log_file=/var/lib/mysql/slow-log.log
long_query_time=2
  • slog_query_log:1开启慢查询日志
  • slow_query_log_file:设置慢查询日志文件
  • long_query_time:设置阈值时间

第三步:查看慢查询日志,操作数据库

tail -f slow_log.log

如下图所示:

在这里插入图片描述

默认情况下,不会记录管理语句,也不会记录不使用索引进行查询的语句。可以使用log_slo_admin_statementslog_queries_not_using_indexes

# 记录执行较慢的管理语句
log_slow_admin_statements=1
# 记录较慢的未使用索引的语句
log_queries_not_using_indexes=1

结语

如果小伙伴什么问题或者指教,欢迎交流。

❓QQ:806797785

参考链接:

[1]MySQL数据库视频[CP/OL].2020-04-16.p153-157.

http://www.zhongyajixie.com/news/6076.html

相关文章:

  • 企业网站建设的基本原则seo是什么意思呢
  • 新疆建设工程信息网站如何设计网站步骤
  • ar做网站杭州seo优化公司
  • 程序员做笔记的网站2023年6月疫情情况
  • 网站建设php怎么安装引流软件有哪些
  • 网站建设和网站搭建哪个好最成功的网络营销案例
  • 免费网站建设方案营销网站定制公司
  • 育婴网站模板seo发包技术教程
  • 企业网站管理系统破解版手游推广个人合作平台
  • 做网站需要准备什么每日舆情信息报送
  • 揭阳网站制作维护百度推广登录官网入口
  • 网站建设项目确认书百度网页网址
  • 招商加盟的网站应该怎么做怎么创建网站教程
  • 高级网站开发技术一个产品的网络营销方案
  • 通州网站制作怎么做网站推广和宣传
  • 珠海网站外包青岛seo计费
  • 怎么利用互联网平台赚钱seo的优化方向
  • 建设银行官方个人网站品牌网络营销策划方案
  • 做淘客网站的公司广东深圳疫情最新情况
  • shopnc本地生活o2o网站系统参考网是合法网站吗?
  • 门头沟网站建设公司网址查询ip地址
  • 电子信息工程能进国家电网吗seo技术
  • 广州发布最新通知深圳宝安seo外包
  • 深圳网站建设公司平台html底部友情链接代码
  • 怎么样做企业模板网站广州百度竞价开户
  • wordpress 找站点优化网站制作方法大全
  • 网站建设的基本流程是怎样的惠州百度seo哪家好
  • 网络电商培训课程网站设计优化公司怎么优化网站的
  • 做网站开发电脑配置seo百度贴吧
  • 厦门市网站建设公司竞价推广公司