17.1 MySQL软件所支持的日志

  MySQL所支持的日志文件里,除了二进制日志文件外,其他日志文件都是文本文件。默认情况下,MySQL只会启动错误日志文件,其他日志文件则需要手动启动。

  • 二进制日志:该日志 文件会以二进制形式记录数据库的各种操作,但是却不记录查询语句。
  • 错误日志:该日志文件会记录MySQL服务器启动、关闭和运行时出错等信息。
  • 通用查询日志:该日志记录MySQL服务器启动和关闭信息、客户端的连接信息、更新数据记录SQL语句和查询数据记录SQL语句。
  • 慢查询日志:记录执行时间超过指定时间的各种操作,通过工具分析慢查询日志可以定位MySQL服务器性能瓶颈所在。

  查看帮助文档可以发现,使用日志有优点也有缺点。启动日之后,虽然可以实现对MySQL服务器进行维护,但是会降低MySQL软件的执行速度。因此是否启动日志,启动什么类型日志要根据具体应用来决定。

17.2 操作二进制日志

1. 启动

修改配置文件my.ini

[mysqld]
log-bin[=dir\[filename]]

2. 查看

mysqlbinblog filename.number  #必须在数据目录下
mysql> showbinary logs;     #显示当前服务器使用的二进制文件及大小
mysql> showmaster logs; #显示主服务器使用的二进制文件及大小
mysql> showmaster status; #当前使用的二进制文件及所处位置

3. 暂停

SET SQL_LOG_BIN=0|1

0:暂停二进制日志功能;

1:开启二进制日志功能。

4. 删除

1.删除所有的二进制日志

RESET MASTER;

2.根据文件或时间点来删除二进制日志

PURGE { BINARY | MASTER } LOGS {TO 'log_name' | BEFORE datetime_expr }

17.3 操作错误日志

1.启动错误日志

修改配置文件my.ini

[mysqld]
error-bin[=dir\[filename]]

在mysql数据库中,错误日志功能是默认开启的。并且,错误日志无法被禁止。

如果没有设置dir和filename:日志文件将使用默认名字——hostname.err,保默到默认目录——数据库数据文件里。

2.查看错误日志

可直接使用普通文本工具查看。

3.删除错误日志

mysqladmin –u root –p flush-logs

17.4 通用查询日志

1.启动

修改配置文件my.ini

[mysqld]
log [=dir\[filename]]

2.查看

可直接使用普通文本工具查看。

3.停止

修改配置文件my.ini,将对应配置注释掉。

4.删除

mysqladmin –u root –p flush-logs

17.5 慢日志查询

1.启动

修改配置文件my.ini

[mysqld]
log-slow-queries[=dir\[filename]]
long_query_time=n

filename的格式:filename-slow.log

如果没有设置dir和filename:日志文件将使用默认名字——hostname-slow.log,保默到默认目录——数据库数据文件里。

2.查看

可直接使用普通文本工具查看。

3.分析

mysqldumpslow.pl -s al|ar|at -t n

-s:为分析慢查询日志时指定排序参数,al表示平均锁定时间,ar表示平均返回记录数,at表示平均查询时间。

-t:表示只显示指定的行数。

4.停止

修改配置文件my.ini,将对应配置注释掉。

5.删除

mysqladmin –u root –p flush-logs

参考博客:http://www.cnblogs.com/wangkongming/p/3684950.html

MYSQL数据库学习十七 日志管理的更多相关文章

  1. nodeJs学习-14 mysql数据库学习、Navicat管理工具

    数据库: MySQL   免费.性能非常不错 缺点:集群.容灾稍微弱一点 Oracle 收费.大型应用.金融级.性能非常不错.集群.容灾非常强 缺点:贵 mySQL安装教程--nodeJsz智能社视频 ...

  2. MySQL/MariaDB数据库的各种日志管理

    MySQL/MariaDB数据库的各种日志管理 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.事务日志 (transaction log) 1>.Innodb事务日志相 ...

  3. (转)Mysql数据库之Binlog日志使用总结

    使用mysqlbinlog提取二进制日志 原文:http://blog.csdn.net/leshami/article/details/41962243 MySQL binlog日志记录了MySQL ...

  4. Linux学习之日志管理(二十一)

    Linux学习之日志管理 目录 日志管理 日志服务 rsyslogd的新特点 启动日志服务 常见日志的作用 日志文件的一般格式 rsyslogd日志服务 /etc/rsyslog.conf配置文件 服 ...

  5. MySQL数据库以及表的管理

    MySQL数据库以及表的管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 今天我们探讨的话题就是如何使用MySQL做开发,我们运维的主要工作不是去开发SQL的,但尽管如此,我们有 ...

  6. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  7. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  8. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  9. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

随机推荐

  1. SQL Server 批量插入

    使用场景 在项目中,涉及到数据库表变更时,可能会需要将一个或多个表中的数据迁移到另一个表中. 这时用sql去执行会很方便! sql语句 //SQL批量插入 create table #ttableNa ...

  2. PHP学习笔记--Php预定义超全局变量$_GET

    Php中的许多预定义变量都是超全局的,无需使用global声明 超全局变量 不需要声明就可以直接使用 提供超全局变量(数组)为了让程序员更快捷的编程 $GLOBALS— 引用全局作用域中可用的全部变量 ...

  3. ios学习笔记(一)Windows7上使用VMWare搭建iPhone开发环境

    我们都知道开发iPhone等ios平台的移动应用时需要使用Mac本,但是Mac本都比较昂贵,所以我们可以采用Windows7上利用VMWare安装Mac操作系统的方法来模拟ios开发环境,达到降低成本 ...

  4. offline页面开发常用方法及页面控件验证

    offline页面开发常用方法及页面控件验证,对一些CheckBoxList操作进行封装,新人可以直接使用该代码. 1.返回上一页网址 /// <summary> /// Descript ...

  5. 修改MyEclipse行数的颜色

    修改MyEclipse行数的颜色 1.未修改前,行数的颜色 2.依次选择"Window--->Preferences" 3.选择"General--->Edi ...

  6. Linux显示目前登入系统的用户信息

    Linux显示目前登入系统的用户信息 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ who youhaidong :0 2015-01-26 22:43 (: ...

  7. OpenStack_I版 2.keystone部署

    生成keystone默认证书,指定用户 修改keystone主配置文件 第625行,修改数据库连接方式   修改完成同步数据库 同步完成可以查看数据库是否有表生成 为了以后调试keystone方便,现 ...

  8. WebForm 生成并显示二维码

    Generate and display QRCode in WebForm. 项目引用 QRCoder生成并显示 QRCode 项目引用 QRCoder How to use QRCoder Via ...

  9. jQuery框架-2.jQuery操作DOM节点与jQuery.ajax方法

    一.jQuery操作DOM 内部插入操作: append(content|fn):向每个匹配的元素内部追加内容. prepend(content):向每个匹配的元素内部前置内容. 外部插入操作: af ...

  10. Java 计算年龄

    public static String getAgeTxt(String birthTime,String beginTime,int level){ if(StringUtils.isBlank( ...