`

Mysql学习笔记

 
阅读更多

1、MySQL日志比较

日志文件

文件中的信息

作用

错误日志

记录启动、运行或停止mysqld时出现的问题。

系统故障时定位故障原因

查询日志

记录建立的客户端连接和执行的语句。

记录数据库发生的所有操作

二进制日志

记录所有更改数据的语句。

数据库数据备份和复制

慢日志

记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。

定位系统性能问题,查找有性能问题的SQL语句

2、错误日志

作用:错误日志文件包含了当mysqld启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。

使用:可以用--log-error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名host_name.errhost_name为主机名)并在数据目录(DATADIR)中写入日志文件。

清理:如果你执行FLUSHLOGS,错误日志用-old重新命名后缀并创建一个新的空日志文件:

shell>mv hostname.err  hostname-old.err

shell>mysqladmin flush-logs

shell>cp hostname-old.errto-backup-directory

shell>rm hostname-old.err

3、查询日志

作用:查询日志记录了客户端的所有连接和语句(二进制日志不包括查询语句。)当你想确切地知道该客户端发送给mysqld的语句时,该日志可能非常有用

使用:可以用--log[=file_name]-l [file_name]选项启动mysqld的查询日志服务。如果没有给定file_name的值,默认名是host_name.log

建议:不要打开此日志,以免影响系统整体性能

清理:同错误日志。

4、慢速查询日志

        作用:慢查询日志记录所有执行时间超过long_query_time秒的SQL语句的日志文件。获得初使表锁定的时间不算作执行时间。

        使用:可以用--log-slow-queries[=file_name]选项启动,如果没有给出file_name值,默认为host_name-slow.log。如果给出了文件名,但不是绝对路径名,文件则写入数据目录。

        查看:使用mysqldumpslow命令获得日志中显示的查询摘要来处理慢查询日志。

        清理:同错误日志。

5、二进制日志

作用:二进制日志记录所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句。二进制日志的主要目的是在恢复使能够最大可能地更新数据库,因为二进制日志包含备份后进行的所有更新,还用于在主复制服务器上记录所有将发送给从服务器的语句。

使用:可以用--log-bin[=file_name]选项启动。如果未给出file_name值,默认名为-bin后面所跟的主机名。如果给出了文件名,但没有包含路径,则文件被写入数据目录(DATADIR)。如果你在日志名中提供了扩展名(例如,--log-bin=file_name.extension),则扩展名被悄悄除掉并忽略。

清理:执行mysqladminflush-logs然后删除三天前的所有日志。手动删除可以使用PURGE MASTER LOGS,该语句还会安全地更新二进制日志索引文件(可以采用日期参数)。自动删除可以选择设置--expire_logs_days=dayday天以前的数据会自动删除。

其他:mysqld在每个二进制日志名后面添加一个数字扩展名。每次你启动服务器或刷新日志时该数字则增加。如果当前的日志大小达到max_binlog_size,还会自动创建新的二进制日志。如果你正使用大的事务,二进制日志还会超过max_binlog_size:事务全写入一个二进制日志中,绝对不要写入不同的二进制日志中。为了能够知道还使用了哪个不同的二进制日志文件,mysqld还创建一个二进制日志索引文件,包含所有使用的二进制日志文件的文件名。默认情况下与二进制日志文件的文件名相同,扩展名为'.index'(可以用--log-bin-index[=file_name]选项更改二进制日志索引文件的文件名)

对于事务表,由于在执行完COMMIT之前,mysqld将整个事务写入二进制日志。当处理事务的线程启动时,它为缓冲查询分配binlog_cache_size大小的内存。如果语句大于该值,线程则打开临时文件来保存事务。线程结束后临时文件被删除。将binlog_cache_size调节到足够大的值,可以避免使用临时文件。(注:Binlog_cache_use状态变量显示了缓冲区保存语句的事务的数量。Binlog_cache_disk_use状态变量显示了事务中实际上有多少必须使用临时文件。)

分享到:
评论

相关推荐

    数据库 MySQL 学习笔记高级篇.md

    数据库 MySQL 学习笔记高级篇.md

    MySQL学习笔记.zip

    这份“MySQL学习笔记”将引导我们深入理解其核心概念和实用技能。 一、MySQL简介 MySQL是一个开源、免费的数据库系统,由瑞典的MySQL AB公司开发,后被Oracle公司收购。它的设计目标是速度、可移植性和简洁性,支持...

    MySQL学习笔记

    ### MySQL学习笔记知识点详解 #### 一、数据库概述 数据库是指按照特定的数据结构来组织、存储和管理数据的集合体。随着信息技术的进步和社会需求的增长,数据库已经从最初的简单存储发展成为用户所需的各种复杂...

    mysql学习笔记.rar

    这份"mysql学习笔记.rar"包含的资源旨在帮助初学者和有经验的开发者深入理解和掌握MySQL的相关知识。 首先,"mysql学习笔记.doc"很可能是核心的学习资料,它可能包含了MySQL的基础概念、安装与配置、SQL语言基础、...

    mysql学习笔记

    这份“mysql学习笔记”涵盖了MySQL的基础知识,包括但不限于数据库的概念、SQL语言的使用、以及更深入的多表操作。 在“day08入门笔记”中,你可能会学到以下内容: 1. **数据库基本概念**:了解什么是数据库,...

    Mysql学习笔记1

    ### MySQL学习笔记1:深入理解内连接与外连接 #### 一、引言 在数据库管理与查询过程中,连接操作是十分常见且重要的一个环节。MySQL作为一种广泛使用的开源关系型数据库管理系统,在处理复杂的多表查询时,提供了...

    MySQL学习笔记.chm

    MySQL学习笔记.chmMySQL学习笔记.chmMySQL学习笔记.chmMySQL学习笔记.chm

    mysql学习笔记(一).txt

    mysql入门学习笔记整理,如何创建数据库、查看数据库,删除数据库,创建表和对表字段类型操作、约束、mysql数据类型整理

    MySQL学习笔记(含基础、运维、进阶三部分)

    MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) 包含了我学习 MySQL 过程中的笔记和资源,从入门到进阶的内容都有涉及。通过...

    MySQL学习笔记666

    mysql学习笔记

    MySQL学习笔记.pdf

    MySQL学习笔记.pdf MySQL学习笔记主要涵盖了 MySQL 服务器的基本操作、数据库管理、数据表的创建和管理、数据的crud 操作、约束的添加和删除等内容。 一、登录和退出 MySQL 服务器 在 MySQL 学习笔记中,首先...

    Mysql学习笔记.pdf

    MySQL 是一款广泛使用的开源关系型数据库管理系统,其学习笔记涵盖了多个关键知识点。以下是对这些知识点的详细解释: 1. **MySQL 体系架构** - **网络连接层**:处理客户端的连接请求,包括连接管理、认证和安全...

    MySql学习笔记

    在MySQL学习过程中,了解和掌握基本的命令是非常重要的。以下是一些关键知识点的详细解释: 1. **显示数据库**: 使用`SHOW DATABASES;`命令可以列出当前MySQL服务器上存在的所有数据库。 2. **创建数据库**: `...

    MySQL学习笔记-JSP操作MySQL

    从给定的文件信息来看,本文档主要围绕“MySQL学习笔记—JSP操作MySQL”的主题展开,详细介绍了如何在JSP环境下操作MySQL数据库的过程。以下是对该文档中的关键知识点进行的深入解析: ### 一、MySQL与JSP的集成 ...

    一千行 MySQL 学习笔记.pdf

    ### MySQL学习笔记知识点详解 #### 一、MySQL服务管理 **1. 启动MySQL服务** 在Windows环境中,可以通过以下命令启动MySQL服务: ```sql net start mysql ``` **2. 创建Windows服务** 若要手动创建一个...

    非常详细的某培训机构mysql学习笔记

    非常详细的某培训机构mysql学习笔记,内容系统全面,实用性强 MySQL1 MySQL基础 MySQ单实例部署 MySQL多实例部署 MySQL数据库操作 MySQL数据类型 MySQL存储引擎 MySQL表操作 MySQL2 MySQL数据操作 MySQL单...

    高性能mysql学习笔记

    ### 高性能MySQL学习笔记:查询性能优化与实践 #### 一、查询性能低下的原因与分析步骤 查询性能低下通常归因于访问了过多的数据。优化查询性能的关键在于识别并减少不必要的数据访问。具体可以通过以下两个步骤...

    MySQL学习笔记-基础到进阶

    内容概要:MySQL学习笔记,内容包括SQL基本语法、MySQL基础知识,包括存储引擎、索引、视图、锁、优化、存储结构等MySQL主要的内容。 适用人群:适合自学MySQL的同学使用。 能学到什么:MySQL从基础到进阶的全部内容...

Global site tag (gtag.js) - Google Analytics