mysql基础(八)mysql日志

mysql日志类型:
    1、查询日志(通常不会开启,也不建议开启)
    2、慢查询日志(建议开启)
    3、错误日志(建议开启)
    4、二进制日志(建议开启)
    5、中继日志
    6、事务日志(帮助事务型存储引擎完成ACID测试)

mysql> SHOW GLOBAL VARIABLES LIKE ‘%log%‘;	#查看和日志相关的变量

    查询日志:
    	general_log=ON|OFF			#是否开启查询日志
	general_log_file=PATH			#查询日志文件路径
	log_output=FILE|TABLE|NONE		#输出方式,默认为FILE

    慢查询日志:执行时长超出指定时长的查询操作
	mysql> SHOW GLOBAL VARIABLES LIKE ‘long_query_time‘;	#查看超时时长

	服务器变量:
	    slow_query_log=ON|OFF	#是否开启慢查询日志
	    log-slow-queries=PATH  	#慢查询日志存储路径,默为HOSTNAME-slow.log
	    log_output=FILE|TABLE	#输出方式,默认为FILE

	mysqldumpslow		#慢查询日志分析工具

    错误日志:
	1、记录mysql启动和关闭过程中产生的事件信息
	2、记录mysql运行过程中产生的错误信息
	3、在主从架构中,从服务器上启动从服务器线程产生的信息

	服务器变量:
	    log_error=OFF|ON|PATH      #启动错误日志,如果不指定错误日志位置将使用默认位置
	    log_warnings=0|1	       #是否记录警告信息

       二进制日志:记录导致数据改变或者有可能导致数据发生改变的SQL语句
        功能:用于实现通过"重放"日志文件中的事件来生成数据副本

	    mysql> SHOW MASTER LOGS;		#查看可使用的二进制日志文件列表
	    mysql> SHOW MASTER STATUS;	#查看正在使用的二进制日志文件
	    mysql> SHOW BINLOG EVENTS;	#查看二进制日志文件内容

	    服务器变量:
	      sql_log_bin=OFF|ON	#是否开启二进制日志
	      log_bin=OFF|ON		#是否开启二进制日志,必须同时启用才能生效
	      binlog_format=STATEMENT|ROW|MIXED		#二进制日志格式
	      max_binlog_size=			#单个二进制文件最大大小
	            1、到达最大大小时自动滚动	  2、重启后自动滚动
	      sync_binlog=0|1			#是否同步写入,默认为异步写入
		    1、同步写入会影响服务器性能	  2、异步写入可能会造成数据丢失

	    二进制文件格式:
	    基于语句的记录:STATEMENT
		    优点:在相同体积下记录的数据更多
		    缺点:不能保证回放的数据和源数据完全相同
	       如:mysql> INSERT INTO test VALUE(1,now());#每一次获取的系统时间都不相同

			基于行(数据)的记录:ROW
			    优点:能保证回放的数据和源数据基本相同
			    缺点:在相同体积下记录的数据更少
		        混合模式:MIXED,由系统判定基于那种方式进行存储

	    二进制文件的构成:
	        日志文件:mysql-bin.00000X	#二进制文件
	        索引文件:mysql-bin.index	#保存当前可用的二进制日志文件列表

	    二进制日志事件的格式:
		mysqlbinlog		#二进制文件分析工具
		    使用格式:mysqlbinlog [--start-position=事件开始位置] 二进制日志文件
		    例:mysqlbinlog mysql-bin.000003

		#at 655
		#170220  8:33:37  server  id 1  end_log_pos 731  Query  thread_id=12  exec_time=0  error_code=0
		SET TIMESTAMP=1487550817/*!*/;
		BEGIN
		/*!*/;

		事件的起始位置:at 655
		事件发生的时间:170220  8:33:37
		server id 1:server id,在做mysql集群时必须保证server id全局唯一
		事件的结束位置:end_log_pos 731
		事件的类型:Query
		事件发生时所在服务器执行此事件的线程ID:thread_id=12
		语句执行和将其写入二进制日志中的时间差
		错误代码:error_code

    中继日志:主从架构中实现主从复制的从服务日志,主要用于保存从二进制日志文件中读取事件

    事务日志:
	由事务型存储自行管理和使用

    清理日志:
	PURGE BINARY LOGS TO ‘mysql-bin.010‘;	#清除指定日志之前的二进制日志
	PURGE BINARY LOGS BEFORE ‘2008-04-02 22:46:26‘;  #清除指定时间之前的二进制日志
时间: 2024-08-23 17:46:53

mysql基础(八)mysql日志的相关文章

MySQL基础及MySQL C API编程

MySQL基础及MySQL C API编程 一.MySQL For Windows安装: 1. 下载: 上官网下载即可: http://www.mysql.com/downloads/ 2. 安装: 没有什么好说的,傻瓜式,也没有什么要注意的. 3. 配置: 添加系统变量MYSQL_HOME和修改PATH,目的就是让系统默认能够找到MySQL命令.(安装目录的/bin下面) PS: 补充一下,有的朋友可能下载的是免安装版本,拷贝到一个地方就可以了,这个时候,配置还是需要的,但是配置完成之后,需要

(3.15)mysql基础深入——mysql默认数据库/系统数据库

(3.15)mysql基础深入——mysql默认数据库 关键词:Mysql默认数据库,mysql系统数据库 1.系统数据库的组成 一共4个 [1]information_schema [2]mysql [3]performance_schema [4]sys [1]information_schema [2]mysql mysql数据库是Mysql核心的数据库,类似于sql server中的master库,oracle中的system部分功能. 主要负责存储数据库的用户/权限等Mysql自己需要

MySql基础学习-mysql安装

Linux环境下的安装 1检查是否已经安装 sudo service mysql start #若未安装,则提示: mysql: unrecognized service 2安装MySql #安装 MySQL 服务端.核心程序 sudo apt-get install mysql-server #安装 MySQL 客户端 sudo apt-get install mysql-client 安装过程中,提示确实yes即可,并且会提示设置root密码,设置即可. 3检查安装 sudo netstat

mysql基础之-mysql存储引擎概述(八)

0x01 mysql 存储引擎:存储引擎也通常被称作“表类型” mysql> show engines;   --- 查看当前所有所支持的存储引擎 mysql> show table status 存储引擎格式: SHOW TABLE STATUS [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr] mysql> show table status in hellodb where Name='class'\G Name 表名 Engi

(3.14)mysql基础深入——mysql 日志分析工具之pt-querty-digest【待完善】

关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢查询日志分析工具 [2]mysqlbinlog:二进制日志分析工具 [3]myprofi:对于只想看sql语句及执行次数的用户来说,比较推荐. [4]mysql-explain-slow-log:德国人写的一个Perl脚本,功能上有点瑕疵.不建议使用. [5]mysql-log-filter:生成简介报表日志分析,可以尝试使用一下. [6]pt-querty-digest(支持高级统计):是

【夯实Mysql基础】MySQL性能优化的21个最佳实践 和 mysql使用索引

本文地址 分享提纲: 1.为查询缓存优化你的查询 2. EXPLAIN 你的 SELECT 查询 3. 当只要一行数据时使用 LIMIT 1 4. 为搜索字段建索引 5. 在Join表的时候使用相当类型的例,并将其索引 6. 千万不要 ORDER BY RAND() 7. 避免 SELECT * 8. 永远为每张表设置一个ID 9. 使用 ENUM 而不是 VARCHAR 10. 从 PROCEDURE ANALYSE() 取得建议 11. 尽可能的使用 NOT NULL 12. Prepare

MySql基础入门-mysql体系结构

mysql体系结构:     由:连接池组件.管理服务和工具组件.sql接口组件.查询分析器组件.优化器组件.                缓冲组件.插件式存储引擎.物理文件组成.     mysql是独有的插件式体系结构,各个存储引擎有自己的特点.              mysql各个存储引擎概述:     innodb存储引擎:[/color][/b] 面向oltp(online transaction processing).行锁.支持外键.非锁定读.默认采用repeaable级别(

[MySQL实战-Mysql基础篇]-mysql架构

1.基本组成 下面是mysql的基本架构示意图  图一 图二 我们可以从图上看出,mysql大体分为两个部分,一个是server层,另一个是引擎层. server层中包含了连接器.查询缓存.分析器.优化器.执行器等,涵盖Mysql的大多数核心服务功能,以及所有的内置函数(如时间.日期.数学.加密等),所有跨存储引擎的功能都在这一层实现,比如存储过程.触发器.视图等. 而存储引擎层负责数据的存储和提取.其架构模式是插件式的,支持InnoDB,MyISAM.Memory等多个存储引擎.现在最常用的存

Mysql基础教程——mysql之一

教程列表:http://www.dxzy163.com/view/index7627.html 41 存储过程 40 全文索引与停止词 39 索引的管 38 索引概念 37 数据库备份与恢复 36 事务语法 35 存储引擎与事务概 34 beforeafter区别 33 触发器实(订单与库存管) 32 触发器语 31 触发器基本概 30 阶段总结() 29 字符集与校对 28 视图 27 表管理之列的增删 26 左连接笔试题 25 左右内连接的区别 24 连接查询概念与左连接语法 23 unio

mysql基础之mysql客户机

我们首先在mysql的客户机上安装mysql-client作为客户端: $ sudo aptitude install mysql-client-5.6 假设所有的准备工作都已就绪,现在你需要一个MySQL用户名和密码.下面我们从客户机的Shell提示符,按照下述方法登录到MySQL: mysql -h host -u user -p 如果你是从本地登录到MySQL(也就是说,从服务器本身登录),或者使用安全的网络连接工具(SSH,Secure Shell)远程登录至MySQL,则可省略主机参数