首页 > 数据库 >MySQL的日志学习总结

MySQL的日志学习总结

时间:2023-04-16 19:24:36浏览次数:37  
标签:总结 binlog log show MySQL 语句 mysql 日志

1、Mysql的安装

这里使用tar包的方式
	https://www.cnblogs.com/hanshuixin/articles/16887899.html
初始的默认密码: 
        tail -200f alert.log
        localhost@root: 后面的内容,就是本机root用户的初始密码,需要记录下来 *<!ckp29Ne=&

 2、错误日志

错误日志是MySQL 中最重要的日志之一,它记录了当mysql启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,建议首先查看此日志
该日志时默认开启的,默认存放目录 /var/log,默认的日志文件名是 mysqld.log。可以通过以下的命令来看日志位置
show variables like "%log_error%"

 3、二进制日志

定义
  	二进制日志binlog 记录了所有DDL语句和DML语句,但不包括数据查询(select show)语句
作用
  	1、灾难时的数据恢复
  	2、MySQL的主从复制时用到
查看是否开启二进制日志
  	show variables like "%log_bin%";
   	看到是否开启binlog 日志
        #my.cnf中 加如下的内容
	   log-bin=mysql-bin
	  server_id=1
	  binlog_format=ROW


docker 安装mysql 5.7 开启binlog
 	docker run --name mysql -p 3306:3306 -v /Users/gaoheqiang/mysqlconf/mysqlconf/my.cnf:/etc/mysql/my.cnf -v /Users/gaoheqiang/mysqlconf/data:/var/lib/mysql -v /Users/gaoheqiang/mysqlconf/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=root --restart=always -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 
日志格式
  	STATEMENT
   		基于SQL语句的日志记录,记录的是SQL语句,对数据进行修改的SQL都会记录在日志文件中
  	ROW
   		基于行的日志记录,记录的是每一行的数据变更(执行了一个update 语句,update 语句影响了 5行,binlog 日志记录的是每一行数据变更前的数据,变更后的数据信息)
 	MIXED
   		没啥用
查看日志格式
   	show variables like "%binlog_format%";
日志内容查看
   	msyqlbinlog 配置环境变量 
   		vi ~/.bash_profile
   		export PATH=$PATH:/usr/local/mysql/bin
   		source ~/.bash_profile
   	产看日志内容
   		mysqlbinlog -d mybatis -v mysql-bin.000001 
	   	-v 把行事件 重构为SQL语句
	   	-d 指定数据库名称,只列出指定的数据库相关操作

二进制日志删除
  对于比较繁忙的业务系统,每天生成的binlog数据巨大,如果长时间不清除,将会占用大量的磁盘空间。
  reset master 删除全部 binlog日志。删除之后日志编号将从 000001开始
  purge master logs to binlog .***** 删除*****编号之前的所有日志
  purge master logs before 'yyyy-mm-dd hh mm ss' 删除日志为 某个日期之前 的 binlog日志

  这个命令需要在mysql客户端执行。

  MySQL 5.7 配置二进制日志的过期时间 重启生效

    expire_logs_days=30 

    

 4、查询日志

查询日志中记录了客户端的所有操作语句,默认情况下查询日志时未开启的。
	show variables like '%general%'
开启查询日志
	/etc/my.cnf 添加如下的内容
		general_log_file=/usr/local/mysql/log/general.log
		general_log=1
	重启mysql
		service mysqld restart

 

标签:总结,binlog,log,show,MySQL,语句,mysql,日志
From: https://www.cnblogs.com/gaohq/p/17323781.html

相关文章

  • burp日志和其他
    1、Logger日志模块Logger显示Burp工具和目标应用程序之间发送的所有HTTP流量的历史记录。这包括由扩展生成的请求。也就是说包括intruder和repeater等。删除target中的记录并不会影响Logger中的内容,反之也不会设置显示的字段:2、导出burp中有三种导出方式(1)Saveselectedit......
  • MySQL有哪些字段类型?如何对表字段数据类型进行优化?
    一、字段优化的基本原则更小更简单的字段类型更好更小的数据类型通常更快,因为重用磁盘、内存和CPU缓存会更少,处理是需要使用到的时钟周期也会更少,而简单数据类型的操作通常需要更少的CPU周期。如果一个类型既可以用字符串又能用整型,优先选择整型,因为字符集和校对规则(排序规则)使字......
  • 关于Spring依赖注入一些理解和总结
    平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依......
  • 储存数据至mysql数据库时出现 (1064, "You have an error in your SQL syntax; check
      在msyql数据库中存储数据时,程序出现了如下报错:  打印存储的数据类型发现数据类型有错误,将数据转为str类型就可以了。。。解决思路:  在初入数据库学习时,出现这个报错还是有些懵的,于是改了捕获异常,发现存储数据函数有问题。从报错中可以看出是有跟'自营店'类似的数据有......
  • MySQL表设计与优化
    影响MySQL查询性能的因素有很多,我们经常会对查询语句、索引字段做一些优化,而其实在表设计的阶段就可能产生一些问题。对于表设计,可以对表结构进行优化,也可以对表字段进行优化。以下通过一个具体的案例演示一些常用的表设计优化的方法。一、业务需求这里,就以学生-教师-课程业务作......
  • php+mysql实现微信公众号回复关键词新闻列表
    非常抱歉,我之前理解有误。如果您想要实现在公众号发送关键词,返回新闻列表的功能,可以按照以下步骤进行操作:1.创建一个数据库表,用于存储新闻的标题、链接和内容等信息。例如,可以创建一个名为news的表,包含id、title、link和content等字段。2.在公众号后台设置自定义菜单或关键词......
  • 2023高效的mysql 随机语句 200万数据为例 用了 0.0030秒
    是的,如果数据表中有200万条记录,使用 ORDERBYRAND() 这种方式来随机选择记录会非常慢,因为MySQL需要对整个表进行排序,然后再返回指定数量的记录。这个过程需要消耗大量的时间和资源。为了提高效率,可以考虑使用其他方法来实现随机选择记录。以下是一些常用的方法:使用 WHER......
  • 10、数据库学习规划:MySQL - 学习规划系列文章
          MySQL数据库是笔者认识的几个流行的数据库之一。类似于Linux重装系统,其也是开源的,最主要是有很多的社区支持,众多的开发者对其能够进行使用,所以其功能也挺强大,便于使用。通过对MySQL数据库的学习,笔者认为其是现今贡献最大和使用最广泛的数据库。因为其有社区版,能够免......
  • 【转】MySQL死锁产生的原因和解决方法
    前言最近老顾经常碰到同事说,mysql又死锁了导致业务报错。今天我们就来聊聊死锁以及怎么解决锁类型mysql锁级别:页级、表级、行级表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发......
  • VBA语法总结
    为了控制Excel,学了些VBA,总结下语法,下文分为五部分:一、代码组织二、常用数据类型三、运算符四、控制流五、常用内置函数一、代码组织1.能写代码的地方有{模块,类模块}。2.代码中可以写的成员有{变量和常量,过程和函数}。对成员的访问修饰符有{public,private}3.写注释的方......