MYSQL启用日志和查看日志

合集下载

MySQL8服务器日志

MySQL8服务器日志

MySQL8服务器⽇志错误⽇志:启动、运⾏、停⽌ mysqld(MySQL Server) 遇到的问题通⽤查询⽇志:建⽴客户端连接和从客户端接收的语句⼆进制⽇志:更改数据的语句(也⽤于复制)中继⽇志:从复制master server接收到的数据更改慢查询⽇志:执⾏查询超过long_query_time 系统变量指定的秒数DDL⽇志(元数据⽇志):DDL语句执⾏的元数据操作通过刷新⽇志可以强制服务器关闭并重新打开⽇志⽂件(有时还会⽣成⼀个新的⽇志⽂件)刷新⽇志⽂件⽅法:mysql> flush logs;mysql> mysqladmin flush-logsmysql> mysqladmin refreshshell> mysqldump --flush-logs此外,当⼆进制⽇志的⼤⼩达到 max_binlog_size 系统变量设置也会刷新该⽇志注:官档中提到 mysqldump 的 --master-data 选项也可会刷新⽇志,测试发现不能通⽤查询⽇志和慢查询⽇志的⼀些说明:log_output 系统变量:控制通⽤查询⽇志和慢查询⽇志输出⽬标位置,可选值包括:TABLE,FILE,NONE;这些值可以任意组合,NONE的优先级最⾼如果将设置log_output='table',则通⽤查询⽇志⽂件、慢查询⽇志⽂件中只会保存系统启动信息general_log 系统变量:控制是否启⽤通⽤⽇志general_log_file 系统变量:控制通⽤⽇志⽂件slow_query_log 系统变量:控制是否启⽤慢查询⽇志slow_query_log_file 系统变量:控制慢查询⽇志⽂件注:如果将通⽤查询⽇志和慢查询⽇志存放在TABLE中,可以通过查询mysql schema下的general_log表以及slow_log表获取⽇志内容关于⽇志表的⼀些补充:写到⽇志表中的条⽬不会写到⼆进制⽇志⽂件中,所以也不会复制到 SLAVE Server关于⽇志表清理⽅法:可以通过TRUNCAET TABLE语句清理,或者通过⼀个轮询的⽅式,⽐如:mysql > user mysql;mysql> create table general_log2 like general_Log;mysql> drop table general_log to gerneral_log_backup, gerneral_logs2 to general_log;通过mysqldump命令只会dump⽇志表的定义,不会dump⽇志表中的数据,这样在恢复时,可以保证恢复⽇志表结构如果⽇志写到⽂件当中,可以通过如下⽅式清理⽇志⽂件:shell> mv host_name.log host_name-old.logshell> mysqladmin flush-logsshell> mv host_name-old.log backup-directory也可以通过⼀种通⽤⽅式处理:SET GLOBAL general_log = 'OFF';shell> mv host_name.log host_name-old.logSET GLOBAL general_log = 'ON';在会话级启停通⽤查询⽇志,可以通过 sql_log_off 会话变量实现写在通⽤查询⽇志中的密码会被重写,通过在MySQL Server启动时添加 --log-raw 选项密码不会重写,这在排查问题时可能有⽤,但是不安全,⽣成中不建议使⽤log_timestamps 系统变量:这个系统变量影响通⽤查询⽇志⽂件、慢查询⽇志⽂件、错误⽇志的显⽰时间戳,通过存储在⽇志表中的⽇志时间戳显⽰没有影响log_timestamps 系统变量有两个取值:UTC、SYSTEM错误⽇志:错误⽇志包含:MySQL Server 启停时间信息,以及在启停和运⾏过程中的错误、警告、提⽰信息如果使⽤mysqld_safe启⽤MySQL Server,在mysqld异常终⽌时,mysqld_safe会重启mysqld并把信息写到错误⽇志中在MySQL 8.0 中,错误⽇志⼦系统有执⾏log event过滤以及写log event的组件和控制组件选择的系统变量组成log_error 系统变量:指定错误⽇志位置log_error_verbosity 系统变量:指定错误⽇志记录等级(0、1、2 分别对应 error、error warning、error warning note)log_error_services 系统变量:指定过滤组件、写组件⼆进制⽇志:⼆进制⽇志包含描述数据库更改的 events,还包含每个更新语句花费的时间⼆进制⽇志记录对数据库对象做出更改的语句,如果这个语句可能更改数据,⽐如:delete from table_name where 1=0;在⼆进制⽇志格式为STATEMENT时会记录到⼆进制⽇志⽂件中,⽽⼆进制⽇志格式为ROW时则不会记录到⼆进制⽇志⽂件中⼆进制⽇志有两个重要作⽤:复制恢复⼆进制⽇志会对系统产⽣⼀些额外的开销,如果MySQL Server不适⽤复制环境,或者不需要做时间点恢复的话,可以不⽤开启⼆进制⽇志与⼆进制⽇志相关系统变量:log_bin 系统变量:指定⼆进制⽇志的basenamelog_slave_updates 系统变量:这个系统变量应⽤在Slave Server中,在Slave Server应⽤从Master Server接收的⼆进制events时,是否将应⽤的events写到Slave Server⾃⾝的⼆进制⽇志中slave_preserve_commit_order 系统变量:这个系统变量也是在Slave Server中使⽤,⽽且是在多线程复制Slave Server才有意义配置多线程复制Slave,设置 slave_parallel_workers 系统变量为⾮ 0 值可以将 slave_parallel_type 系统变量设置为 Logical Clock,这样对于Master Server端组提交的事务可以在Slave Server端并⾏化应⽤接收的events⼆进制⽇志刷新的⼏种情形:MySQL Server 启动flush logs⽇志⽂件⼤⼩达到max_binlog_size 系统变量定义的值注:⼆进制⽇志⽂件⼤⼩可能会超过 max_binlog_size 指定的⼤⼩,⽐如:⼀个⼤事务写到⽇志⽂件,由于事务以 one piece 存储到⽇志⽂件中,不会在⽇志⽂件中分割log_bin_index 系统变量:查看⼆进制⽇志⽂件索引⽂件位置sql_log_bin 会话变量:可以在会话级关闭⼆进制⽇志⽣成验证⼆进制⽇志完整性:默认情况下,MySQL Server 会写events和events长度⽤于验证events是否正确写⼊如果 binlog_checksum 系统变量启⽤,MySQL Server 还会写⼊events校验和这样在从⼆进制⽇志读信息时,Master Server会使⽤events长度,以及校验和信息(如果配置了master_verify_checksum 系统变量)在Slave Server端,IO线程会验证从Master Server端接收的events,如果Slave Server端配置了slave_sql_verify_checksum 系统变量,Slave Server的SQL线程也会验证校验和信息在⼆进制⽇志中记录的events的格式取决于⼆进制⽇志的格式,⼆进制⽇志格式包括:STATEMENT、ROW、MIX-BASED 可以通过 RESET MASTER命令删除所有的⼆进制⽇志,或者通过 PURGE BINARY LOG语句删除部分⼆进制⽇志补充说明⼀下:在复制环境中,在Master Server端,RESET MASTER不仅会删除所有的⼆进制⽇志,如果使⽤的是基于GTID复制模式,也会清除所有的GTID信息;在Slave Server端,RESET SLAVE删除所有中继⽇志,RESET SLAVE ALL不仅会删除所有中继⽇志,⽽且会清除连接、状态信息,在MySQL 8 中,默认使⽤mysql.slave_relay_log_info、mysql.slave_master_info表存储有关信息可以通过mysqlbinlog命令查看⼆进制⽇志内容,这是MySQL Server做时间点恢复会有⽤,⽐如:shell> mysqlbinlog log_file | mysql -h server_name对于事务表,在语句或者事务完成后,释放锁或者提交前,会⽴即记录在⼆进制⽇志中对于⾮事务表,在语句执⾏后,就会⽴即记录在⼆进制⽇志中在⼀个未提交的事务中,所有对⽀持事务表的更改,在Server未接收到提交之前会先进⾏缓存;提交后,在执⾏COMMIT 前,MySQL Server将整个事务写到⼆进制⽇志中当⼀个线程开始处理事务时,会分配⼀个binlog_cache_size 系统变量的buffer⽤于buffer事务语句,如果事务语句⼤于binlog_cache_size 指定的值,线程打开⼀个临时⽂件⽤于存储该事务binlog_cache_use 状态变量:查看MySQL Server中使⽤binlog_cache这个buffer的事务数量(包括使⽤临时⽂件的事务)binlog_cache_disk_use 状态变量:查看MySQL Server中使⽤临时⽂件的事务通过这两个状态变量,可以来调整binlog_cache_size值MySQL Server中还定义了⼀个系统变量 max_binlog_cache_size⽤来限制整个Server中所有线程能够使⽤的binlog buffer ⼤⼩基于ROW格式的⼆进制⽇志,对于像CREATE ... SELECT 和 INSERT ... SELECT语句会将其转化为⼀般的INSERT语句,这对于binlog_cache_size有⼀定的影响binlog_error_action 系统变量:控制在写、刷新、同步⼆进制⽇志时发⽣错误,MySQL Server所采取的动作,默认是:ABORT_SERVER,另外⼀个值是:IGNORE_ERROR,这个值⽤于向后兼容sync_binlog 系统变量:控制通过⼆进制⽇志的频率,默认值 1,是最安全的,但也是最慢的,与其相关的另⼀个系统变量:innodb_flush_log_at_trx_commit,默认值也是 1早期MySQL Server存在的⼀种情况:使⽤InnoDB表,MySQL处理事务,在将事务写到⼆进制⽇志后,提交事务到InnoDB前,系统崩溃,重启后,InnoDB回滚该事务,但是事务相关的⽇志保留在⼆进制⽇志⽂件中早期解决这种情况的⽅法是使⽤XA事务,使InnoDB⽀持事务的两阶段提交,MySQL Server会截断⼆进制⽇志到最后有效的位置在MySQL 8.0以后总是启⽤XA事务的两阶段提交,保证InnoDB 表数据与⼆进制⽇志数据⼀致如果MySQL Server在崩溃恢复时发现⼆进制⽇志⽐他应该的⼤⼩下的时候,它丢失了⾄少⼀个成功提交的事务;在这种情况下,⼆进制⽇志是不正确的,复制应该从Master Server 新的快照中开始;这种情况不会发⽣,如果sync_binlog=1并且⼆进制⽇志真的同步到磁盘上(有时不会)sync_binlog=1: Enables synchronization of the binary log to disk before transactions are committed. This is the safest setting but can have a negative impact on performance due to the increased number of disk writes. In the event of a power failure or operating system crash, transactions that are missing from the binary log are only in a prepared state. Thispermits the automatic recovery routine to roll back the transactions, which guarantees that no transaction is lost from the binary log.⼆进制⽇志格式:binlog_format 系统变量:可选值:STATEMENT、ROW、MIXED基于MIXED的⼆进制⽇志格式默认使⽤基于STATEMENT⼆进制⽇志格式在复制模式下,主从节点的binglog_format应该保持⼀致在使⽤InnoDB存储引擎,同时事务隔离等级时READ-COMMITTED情况下,将BINLOG_FORMAT设置为STATEMENT,会导致InnoDB表不能插⼊数据binlog_row_event_max_size 系统变量:Where possible, rows stored in the binary log are grouped into events with a size not exceeding the value of this setting. If an event cannot be split, the maximum size can be exceeded.慢查询⽇志:The server uses the controlling parameters in the following order to determine whether to write a query to the slow query log:1. The query must either not be an administrative statement, or log_slow_admin_statements must be enabled.2. The query must have taken at least long_query_time seconds, or log_queries_not_using_indexes must be enabled and the query used no indexes for row lookups.3. The query must have examined at least min_examined_row_limit rows.4. The query must not be suppressed according to the log_throttle_queries_not_using_indexes setting.MySQL 8.0.14 版本之后在使⽤慢查询⽇志⽂件时,可以设置log_slow_extra 系统变量,会在慢查询⽇志⽂件中多出⼀些额外字段信息,慢查询⽇志⽂件中的SET语句,指定⼀个时间戳,在MySQL 8.0.14版本之前是指语句写⼊⽇志⽂件的时间,在MySQL8.0.14 版本之后指语句开始执⾏时间DDL⽇志:DDL⽇志是为了维护DDL操作的原⼦性,DDL⽇志会在需要时,⽣成在数据⽬录下:ddl_log.log⼀般是不需要⼈为⼲预该⽇志⽂件,除⾮该⽇志⽂件达到上限,4GServer ⽇志维护:在Linux(RedHat)安装上,可以使⽤mysql-log-rotate脚本做⽇志维护在其它系统上,可以通过cron调⽤脚本的⽅式做⽇志维护⼯作binlog_expire_logs_seconds:控制⼆进制⽇志过期天数,默认是30天,删除过期⼆进制⽇志⽂件发⽣在Server 启动,或者刷新⼆进制⽇志⽂件;如果是在复制环境中使⽤该参数,注意该值不能⼩于Slave落后Master的最⼤时间强制MySQL使⽤新的⽇志⽂件:FLUSH LOGS、MYSQLADMIN FLUSH-LOGS、MYSQLADMIN REFRESH、MYSQLDUMP --LFUSH-LOGSFLUSH LOGS命令⽀持选择特定的待刷新的⽇志⽂件,⽐如:FLUSH BINARY LOGS这样如果是要使⽤新的通⽤⽇志⽂件、慢查询⽇志⽂件、错误⽇志⽂件,在类-Unix平台上可以这样实现:cd mysql-data-directorymv mysql.log mysql.log.oldmv mysql-slow.log mysql-slow.log.oldmv err.log err.log.oldflush general logs;flush slow logs;flush error logs;⽽不会对其他⽇志⽂件有影响补充说明⼀下:通过重命名⽇志⽂件的⽅式刷新⽇志⽂件,要注意MySQL Server要有新⽣成的⽇志⽂件⽬录的写⼊权限通过FLUSH 命令刷新需要连接到MySQL Server,其实通过信号也可以刷新⽇志⽂件,在MySQL 8.0.19版本,可以通过SIGUSR1只同时刷新通⽤⽇志⽂件、慢查询⽇志⽂件、错误⽇志⽂件。

mysql的日志类型

mysql的日志类型

mysql的日志类型【原创版】目录1.MySQL 日志概述2.MySQL 日志类型3.事件日志4.查询日志5.慢查询日志6.错误日志7.日志文件的位置和配置8.总结正文MySQL 日志概述MySQL 是一款广泛使用的开源关系型数据库管理系统,它能够存储和管理大量的数据。

为了确保数据库的稳定运行,MySQL 提供了不同类型的日志,以便于开发者监控数据库的运行状态、排查问题和回滚数据。

MySQL 日志类型MySQL 主要有以下几种日志类型:1.事件日志(Event Logs):事件日志用于记录数据库中的重要事件,例如表结构的更改、索引的创建和删除等。

事件日志对于数据库管理员来说非常有用,因为它能够记录数据库的变更历史。

2.查询日志(Query Logs):查询日志用于记录客户端的 SQL 查询语句。

通过查询日志,开发者可以了解用户的查询行为,分析 SQL 性能,找出慢查询并进行优化。

3.慢查询日志(Slow Query Logs):慢查询日志用于记录执行时间较长的 SQL 查询。

开发者可以通过分析慢查询日志,找出性能瓶颈并进行优化,提高数据库的运行效率。

4.错误日志(Error Logs):错误日志用于记录数据库运行过程中遇到的错误和异常。

开发者可以通过查看错误日志,及时发现并解决数据库的问题。

日志文件的位置和配置MySQL 的日志文件默认位于数据目录下,文件名为“mysql-yyyymmdd-nnnnnn.log”,其中“yyyymmdd”表示日期,“nnnnnn”表示序号。

开发者可以根据需要配置日志文件的位置、大小和保留策略。

在 MySQL 配置文件(f 或 my.ini)中,可以修改以下参数来调整日志设置:1.log-bin:启用二进制日志记录,以便于备份和恢复数据。

2.log-bin-trust-cmd:设置是否信任客户端的命令。

3.log-bin-output:设置二进制日志文件的路径。

4.log-bin-size:设置二进制日志文件的最大大小。

mysql 历史语句

mysql 历史语句

mysql 历史语句
在 MySQL 中,你可以通过以下步骤来记录历史语句:1. 查看是否开启日志记录:使用命令`SHOW VARIABLES LIKE '%gener%'`。

如果没有开启,继续下一步。

2. 开启日志记录:使用命令`SET GLOBAL general_log = 'ON'`。

如果已经开启,跳过下一步。

3. 查看日志记录的方式:使用命令`SHOW VARIABLES LIKE 'log_output'`。

4. 设置日志记录的方式为FILE:使用命令`SET GLOBAL log_output='FILE'`。

完成上述步骤后,你可以在指定的文件中查看历史的SQL 语句记录。

如果你想查询当前正在执行的 SQL 语句,可以使用命令`SHOW PROCESSLIST`或`SELECT * FROM information_schema.`PROCESSLIST` WHERE INFO IS NOT NULL`。

请注意,上述步骤可能因为MySQL 版本不同而有所差异,建议在使用前仔细阅读MySQL 的官方文档或相关教程。

查看mysql数据库操作记录日志

查看mysql数据库操作记录日志

查看mysql数据库操作记录⽇志
1、⾸先确认你⽇志是否启⽤了mysql>show variables like 'log_bin'。

2、如果启⽤了,即ON,那⽇志⽂件就在mysql的安装⽬录的data⽬录下。

3、怎样知道当前的⽇志mysql> show master status。

4、看⼆进制⽇志⽂件⽤mysqlbinlog,shell>mysqlbinlog mail-bin.000001或者shell>mysqlbinlog mail-bin.000001 | tail,Windows 下⽤类似的。

MySQL的⽇志操作:
1、⾸先,登陆mysql后,执⾏:show variables like 'log_bin'。

2、#log-errol开启⽅式:在my.ini的[mysqld]选项下:添加代码:log-error=E:\log-error.txt。

记录内容:主要是记录启动、运⾏或停⽌mysqld时出现的致命性问题,都是系统级的错误记录。

3、#查询⽇志:log,开启⽅式:在my.ini的[mysqld]选项下:添加代码:log=E:/mysql_log.txt。

4、#⼆进制⽇志:log-bin,开启⽅式:在my.ini的[mysqld]选项下:添加代码:log-bin=E:/mysql_log_bin,记录内容:主要是记录所有的更改数据的语句,可使⽤mysqlbinlog命令恢复数据。

mysql的日志类型

mysql的日志类型

mysql的日志类型MySQL有多种日志类型,用于记录数据库的不同操作和事件。

以下是常见的MySQL日志类型:1. 二进制日志(Binary Log):-记录数据库的所有修改操作,如INSERT、UPDATE、DELETE。

-用于主从复制和点播恢复。

2. 错误日志(Error Log):-记录MySQL服务器的错误信息、警告和通知。

-包含有关发生错误的上下文信息。

3. 查询日志(Query Log):-记录所有的查询语句,包括对表的读取操作。

-可以通过设置`log_queries_not_using_indexes`选项来启用。

4. 慢查询日志(Slow Query Log):-记录执行时间超过指定时间阈值的查询。

-通过设置`slow_query_log`选项来启用。

5. 中继日志(Relay Log):-用于主从复制,存储从主服务器接收的二进制日志事件。

-在从服务器上执行这些事件,以保持从服务器与主服务器的同步。

6. 事务日志(Transaction Log):-记录事务的开始和结束。

-主要用于InnoDB存储引擎,支持事务的回滚和恢复。

7. 错误信息日志(General Query Log):-记录所有的查询和客户端的连接信息。

-可以通过设置`general_log`选项来启用。

8. InnoDB状态日志(InnoDB Status Log):-记录InnoDB存储引擎的状态信息,如锁和事务信息。

-可以通过执行`SHOW ENGINE INNODB STATUS`来查看。

这些日志类型允许数据库管理员监视和调试MySQL服务器的运行状态,同时提供了故障排除和性能优化的工具。

mysql查看执行sql语句的记录日志

mysql查看执行sql语句的记录日志
1使用processlist但是有个弊端就是只能查看正在执行的sql语句对应历史记录查看不到
mysql查看执行 sqlቤተ መጻሕፍቲ ባይዱ句的记录日志
1、使用processlist,但是有个弊端,就是只能查看正在执行的sql语句,对应历史记录,查看不到。好处是不用设置,不会保存。 -- use information_schema; -- show processlist; 或者: -- select * from information_schema.`PROCESSLIST` where info is not null; 2、开启日志模式 -- 1、设置 -- SET GLOBAL log_output = 'TABLE';SET GLOBAL general_log = 'ON'; //日志开启 -- SET GLOBAL log_output = 'TABLE'; SET GLOBAL general_log = 'OFF'; //日志关闭 -- 2、查询 SELECT * from mysql.general_log ORDER BY event_time DESC; -- 3、清空表(delete对于这个表,不允许使用,只能用truncate) -- truncate table mysql.general_log;
在查询sql语句之后,在对应的 C:\Program Files\MySQL\MySQL Server 5.7\data 文件夹下面有对应的log记录
ps:在查询到所需要的记录之后,应尽快关闭日志模式,占用磁盘空间比较大
转至:/lanfan_11/article/details/47837657

mysql查看binlog日志

mysql查看binlog日志

mysql查看binlog⽇志业内⽬前推荐使⽤的是row模式,准确性⾼,虽然说⽂件⼤,但是现在有SSD和万兆光纤⽹络,这些磁盘IO和⽹络IO都是可以接受的。

那么,⼤家⼀定想问,为什么不推荐使⽤mixed模式,理由如下假设master有两条记录,⽽slave只有⼀条记录。

master的数据为+----+------------------------------------------------------+| id | n |+----+------------------------------------------------------+| 1 | d24c2c7e-430b-11e7-bf1b-00155d016710 || 2 | ddd |+----+------------------------------------------------------+slave的数据为+----+-------------------------------------------------------+| id | n |+----+-------------------------------------------------------+| 1 | d24c2c7e-430b-11e7-bf1b-00155d016710 |+----+-------------------------------------------------------+当在master上更新⼀条从库不存在的记录时,也就是id=2的记录,你会发现master是可以执⾏成功的。

⽽slave拿到这个SQL后,也会照常执⾏,不报任何异常,只是更新操作不影响⾏数⽽已。

并且你执⾏命令show slave status,查看输出,你会发现没有异常。

但是,如果你是row模式,由于这⾏根本不存在,是会报1062错误的。

mysql binlog 解析 sql语句

mysql binlog 解析 sql语句

mysql binlog 解析sql语句MySQL的二进制日志(binlog)是一种记录数据库中所有修改操作的日志文件。

通过解析binlog,我们可以获取到数据库修改的详细信息,包括insert、update、delete等操作语句。

在本文中,我们将一步一步地介绍如何解析binlog并获取sql语句的过程。

第一步:开启binlog日志功能在MySQL配置文件中,一般位于/etc/myf或/etc/mysql/myf,找到以下配置项并确保其启用:[mysqld]log_bin=mysql-bin这个配置项将启用binlog日志,并将其存储在mysql-bin文件中。

在修改配置文件后,需要重启MySQL服务使配置生效。

第二步:查看binlog信息通过MySQL的命令行客户端连接到数据库,执行以下命令可以查看当前的binlog信息:SHOW MASTER STATUS;该命令将返回一个结果集,其中包含有关binlog的一些关键信息,如当前binlog文件的名称以及在该文件中的位置。

这些信息将在后续的操作中用到。

第三步:解析binlog文件接下来,我们需要使用专门的工具来解析binlog日志文件。

有许多第三方工具可以完成这个任务,例如MySQL官方提供的mysqlbinlog工具,以及开源的工具mysqlbinlog2。

这里我们以mysqlbinlog工具为例进行解析。

首先,使用以下命令来导出binlog文件:mysqlbinlog base64-output=DECODE-ROWS mysql-bin.000001 > binlog.txt该命令将解析名为mysql-bin.000001的binlog文件,并将其解析结果导出到binlog.txt文件中。

可以根据实际情况修改binlog文件的路径和名称。

第四步:解析binlog文件中的操作语句现在,我们可以打开binlog.txt文件,并查找我们感兴趣的操作语句。

2018-mysql保存日志-优秀word范文 (7页)

2018-mysql保存日志-优秀word范文 (7页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==mysql保存日志篇一:mysql根据日志恢复数据详细步骤此文详细介绍了根据mysql的二进制日志恢复丢失的数据。

在7月17日不小心删除了一个工程的整个数据,导致数据丢失。

最新的备份是5月29日。

丢失的数据比较多。

由于我发现这个mysql数据库开启了日志功能,日志记录从从5月3日到7月17日。

1. 查看mysql是否开启二进制日志。

bin-log日志记录了所有的DDL和DML的语句。

查看f中是否有log-bin的设置Log-bin=mysql-binEXPIRE_LOGS_DAYS 此参数是设置日志的过期天数,过期的日志将会被自动删除,这有利于减少我们管理日志的工作量,需要修改fEXPIRE_LOGS_DAYS=3这里我们设定保存日志为3天,3天之后过期的日志将被自动删除2、定期完整备份你还需要间隔一定的时间做数据库的完整备份,只有这样你才有可能快速的恢复最新数据。

3、查看备份时间查看你备份的时间,如backup.sql,取最后一行:-- Dump completed on201X-11-08 11:11:48。

或者查看backup.sql 的文件生成日期也可以。

4恢复bin-log是记录着mysql所有事件的操作,当mysql发生灾难性错误时,可以通过bin-log做完整恢复,基于时间点的恢复,和基于位置的恢复基于时间点的恢复首先利用mysqlbinlog.exe 命令将二进制日志转换为txt文件。

D:\Mysql\bin>mysqlbinlog.exe d:/Mysql/backupLog.000033>change.txt从change.txt 可以看到我删除这个库的时间,如下图所示暂时关闭服务,防止新数据写入,导出二进制日志:多个日志文件之间用空格隔开。

mysql三种日志

mysql三种日志

mysql三种⽇志1. MySQL⽇志之binlog⽇志1.1 mysql⼯具mysqlbinlogmysqbinlog⼯具的作⽤是解析mysql的⼆进制binlog⽇志内容,把⼆进制的⽇志解析成可以在MySQL数据库⾥执⾏的SQL语句。

1.2 MySQL的·binlog⽇志是什么?MySQL数据⽬录下的如下⽂件就是mysql的binlog⽇志mysql-bin.000001mysql-bin.000002mysql-bin.000003mysql-bin.000004mysql-bin.000005mysql-bin.000006mysql-bin.000007mysql-bin.000008. . . . . .. .提⽰:要想⽣成binlog必须在配置⽂件中打开log-bin功能[root@db01 3306]# greplog-bin /data/3306/flog-bin =/data/3306/mysql-bin1.3 mysql binlog⽇志功能开启[root@db01 3306]# vim /data/3306/flog-bin = /data/3306/mysql-bin1.4 mysql的binlog⽇志作⽤是什么?mysql的binlog⽇志作⽤是⽤来记录mysql内部增删等对mysql数据库有更新的内容的记录(对数据的改动),对数据库查询的语句如show,select开头的语句,不会被binlog⽇志记录。

⽤于数据库的主从复制,以及增量恢复。

测试题:在MySQL数据库中,关于binlog⽇志,下列说法正确的是-----------(A)A:依靠⾜够长度的binlog⽇志和定期的全备,我们可以恢复任何时间点的单表数据。

B:以mysql主从同步为例,binlog中会记录主数据库的所有操作。

C:以mysql主从同步为例,binlog中会记录主数据库的所有查询操作。

MYSQL主要日志

MYSQL主要日志

中继日志 (Relay Log)
01
作用:在从服务器上用于存储从主服务器二进制日志
中读取的事件。它是 MySQL 复制的一部分。
查看位置:通常位于从服务器的数据目录下,并且文
02
件名由 relay-log 配置选项或自动生成的序号指定。
用途:MySQL 主从复制中在从服务器上使用。
03
重做日志 (Redo Log, InnoDB 专有)
撤销日志 (Undo Log, InnoDB专有)
作用:用于在事务回滚时撤
销之前的更改,或者在 MVCC(多版本并发控制)
1
中提供旧数据版本。
2
查看位置:与数据文件一起 存储,不直接可见。
3 用途:支持事务的ACID属
性,特别是回滚和MVCC。
ቤተ መጻሕፍቲ ባይዱ
谢谢
慢查询日志 (Slow Query Log)
作用:记录执行时间超过long_query_time(默认值为 10 秒,但可以调整) 的查询。 查看位置:默认情况下是关闭的,但可以通过在配置文件中设置 slow_query_log和slow_query_log_file选项来启用和指定其位置。 用途:用于找出并优化那些执行缓慢的查询,以提高数据库性能。
错误日志 (Error Log)
作用:记录 MySQL 启动、运行或停止时发生的问题或错误信息。 查看位置:通常位于数据目录下的hostname.err文件中(其中hostname是 服务器的主机名),但也可以通过配置文件中的log-error选项来指定其位置。 用途:用于诊断启动问题、运行时的严重错误等。
MySQL主要日志
主要日志
目录
0 1 错误日志 (Error Log) 0 2 查询日志 (General Query Log) 0 3 慢查询日志 (Slow Query Log) 0 4 二进制日志 (Binary Log) 0 5 中继日志 (Relay Log) 0 6 重做日志 (Redo Log, InnoDB 专有) 0 7 撤销日志 (Undo Log, InnoDB专有)

Window下mysqlbinlog开启及查看,mysqlbinlog

Window下mysqlbinlog开启及查看,mysqlbinlog

Window下mysqlbinlog开启及查看,mysqlbinlog查看是否开启了binlog:win+r => cmd => 连接mysql=>show variables like 'log_%';mysql> show variables like 'log_%';+---------------------------------+-------------+| Variable_name | Value |+---------------------------------+-------------+| log_bin | ON || log_bin_trust_function_creators | OFF || log_error | .\mysql.err || log_queries_not_using_indexes | OFF || log_slave_updates | OFF || log_slow_queries | ON || log_warnings | 1 |+---------------------------------+-------------+没有开启log_bin的值是OFF,开启之后是ON开启binlog:修改mysql的配置⽂件my.ini。

添加如下配置:该⽂件默认不允许修改,需要右键“管理员取得所有权”之后才能保存修改。

另外,需要注意的是图中的my.ini位于:C:\ProgramData\MySQL\MySQL Server 5.7,⽽不是位于:C:\ProgramFiles\MySQL\MySQL Server 5.7。

看图:3、重启mysql服务。

如图:4、验证binlog是否开启:show variables like 'log_bin'; 和 show binary logs;5、binlog⽂件的位置:如果在修改my.ini的binlog时给的是全路径,那么⽣成的⽇志⽂件就在指定的⽬录下;如果如步骤2中只给⼀个名字,那么⽣成的binlog⽇志的位置为:假设给的全路径配置为:服务重启之后就会在指定⽬录下产⽣mysql-bin.000001和mysql-bin.index⽂件:查看binlog:win+r => cmd => 连接mysql=> show binary logs; =>可以查看⾃⼰binlog的名称win+r => cmd => 连接mysql=> show binlog events; =>可以查看已⽣成的binlog导出成⽂本⽂件:D:\AppServ\MySQL\bin>mysqlbinlog >d:/test.txt确保在bin⽬录下有mysqlbinlog.exe 没有的话搜索下载mysql 使⽤mysqlbinlog查看⽇志的问题mysqlbinlog mysql-bin.00005 --startdatetime='时间' --stopdatetime='时间' --database=DB_name | grep -i -A 6 'id=111' ⽤grep..Windows下mysql的binlog 位置在哪,版本是515⼆进制⽂件在data⽬录下,可以再mysql命令⾏执⾏, show variables like '%datadir%';查看data路径。

MySQL数据库的日志管理和审计策略

MySQL数据库的日志管理和审计策略

MySQL数据库的日志管理和审计策略概述MySQL数据库是一种广泛使用的关系型数据库管理系统,数据安全一直是任何数据库系统都需要考虑的重要问题之一。

在MySQL中,日志管理和审计策略起着至关重要的作用,可以有效地跟踪和管理数据库操作。

本文将详细探讨MySQL数据库的日志管理和审计策略,帮助读者加深对该问题的了解。

一、MySQL日志类型MySQL数据库具有多种类型的日志,包括二进制日志、错误日志、查询日志、慢查询日志和事务日志等。

这些日志记录了数据库的不同方面的活动和错误信息,有助于管理员进行故障排查、性能优化和安全审计等工作。

1. 二进制日志二进制日志是MySQL最重要的日志之一,它记录了所有对数据库执行的修改操作,包括插入、更新和删除等。

二进制日志还可以用于数据库的备份和恢复,并能防止数据丢失。

管理员可以通过设置二进制日志的参数来控制日志文件的大小和保留时间等。

2. 错误日志错误日志记录了MySQL数据库的错误和警告信息,包括启动和关闭数据库服务的相关信息。

管理员可以通过检查错误日志来识别并解决潜在的问题,如数据库连接失败、语法错误和权限问题等。

3. 查询日志查询日志记录了所有被执行的查询语句,包括SELECT、INSERT、UPDATE 和DELETE等操作。

通过查看查询日志,管理员可以了解数据库的访问模式和性能瓶颈,并进行相应的调整和优化。

4. 慢查询日志慢查询日志记录了执行时间超过预设阈值的查询语句。

管理员可以通过分析慢查询日志来识别查询性能问题,并优化查询语句或数据库结构以提高性能。

5. 事务日志事务日志也称为redo日志,记录了数据库事务的更改信息。

事务日志在数据库崩溃或重启后用于恢复数据库的一致性,并确保事务的持久性。

管理员可以通过设置事务日志的大小和存储位置等参数来管理和保护数据库的事务。

二、MySQL日志管理策略良好的日志管理策略对于保护数据库和追踪数据库活动至关重要。

以下是一些有效的MySQL日志管理策略:1. 设置合适的日志级别MySQL日志级别由server层的参数log_error_verbosity控制,管理员可以根据需要设置适当的日志级别。

MySQL错误日志的查看与分析方法

MySQL错误日志的查看与分析方法

MySQL错误日志的查看与分析方法导言:MySQL是一种开源的关系型数据库管理系统,被广泛应用于Web开发、大数据存储与处理等领域。

然而,使用MySQL过程中难免会遇到各种错误,而错误日志则是帮助开发人员追踪和解决问题的重要工具。

本文将介绍MySQL错误日志的查看与分析方法,希望能对读者在处理MySQL错误时提供一些有用的指导。

一、错误日志的位置与配置MySQL的错误日志默认存储在数据目录下的主机名.err文件中,可以通过查看MySQL配置文件f中的`log-error`选项来确认其准确位置。

若未指定`log-error`选项,则错误日志会被记录在系统日志文件或控制台上。

二、查看错误日志1. 登录到服务器或虚拟机中的MySQL命令行客户端;2. 运行以下命令,查看MySQL错误日志:```SHOW VARIABLES LIKE 'log_error';```该命令将显示当前MySQL错误日志的路径,然后可以使用系统提供的查看命令(如`cat`、`less`等)来打开并查看具体内容。

三、错误日志的格式与内容MySQL错误日志使用文本格式存储,其内容包括时间戳、错误级别、错误代码、错误信息等。

下面是一个示例错误日志的内容:```2021-01-01T00:00:00.000000Z 0 [ERROR] [Error Code]: Error message```其中,时间戳表示错误发生的时间,错误级别可以是`ERROR`、`WARNING`等,错误代码表示具体的错误类型,错误信息则是对错误的描述。

四、错误日志的分析方法1. 根据时间戳定位错误发生的时间,可以通过在错误日志中搜索该时间戳或者前后几行的内容来确定具体错误信息;2. 根据错误级别过滤错误,有时错误日志中会包含许多警告信息,我们可以通过只关注`ERROR`级别的信息来排除无关的内容;3. 根据错误代码查询相关信息,MySQL官方文档中提供了详细的错误代码列表,我们可以根据错误代码定位到具体的错误类型,并找到相应的解决方案;4. 结合其他日志和监控工具,有时MySQL错误日志中的信息可能不够详细,我们可以结合其他日志(如慢查询日志、查询日志)和监控工具(如Percona Toolkit、pmacct等)来对错误进行更深入的分析。

MySQL日志管理及性能影响分析

MySQL日志管理及性能影响分析

MySQL日志管理及性能影响分析引言:MySQL是一款开源的关系型数据库管理系统,被广泛应用于各种Web应用和企业级应用程序。

在使用MySQL时,日志管理是非常重要的一部分工作,不仅可以用于故障排查和性能调优,还可以用于数据恢复和安全审计等方面。

本文将探讨MySQL的各种日志类型、日志的配置、日志的分析和性能影响等方面的内容。

一、MySQL日志类型MySQL提供了多种日志类型来记录不同的信息,主要包括:错误日志、查询日志、二进制日志、慢查询日志和事务日志。

1. 错误日志(Error Log):错误日志是记录MySQL服务器发生错误和警告的地方。

它包含了MySQL服务器运行过程中的各种错误消息和警告信息。

错误日志的默认位置是MySQL的数据目录下的错误日志文件,可以通过f配置文件中的log-error选项来指定错误日志文件的位置和名称。

2. 查询日志(Query Log):查询日志是记录MySQL服务器执行的所有查询语句的地方。

它可以用来追踪和分析数据库的查询操作,对于排查性能问题和检测恶意查询非常有用。

查询日志的默认位置是MySQL的数据目录下的查询日志文件,可以通过f配置文件中的general_log选项来启用查询日志,并通过general_log_file选项指定查询日志文件的位置和名称。

3. 二进制日志(Binary Log):二进制日志是记录MySQL服务器所有的数据修改操作的地方。

它可以用于数据恢复、主从复制和数据同步等方面。

二进制日志的默认位置是MySQL的数据目录下的二进制日志文件,可以通过f配置文件中的log-bin选项来启用二进制日志,并通过log_bin_basename选项指定二进制日志的基础文件名。

4. 慢查询日志(Slow Query Log):慢查询日志是记录MySQL服务器执行时间超过设定阈值的查询语句的地方。

它可以用来查找和优化执行时间较长的查询,提升数据库的性能。

开启MySQL的binlog日志及日志详解

开启MySQL的binlog日志及日志详解

开启MySQL的binlog⽇志及⽇志详解Mysql的binlog开启binlog 就是binary log,⼆进制⽇志⽂件,这个⽂件记录了mysql所有的dml操作。

通过binlog⽇志我们可以做数据恢复,做主住复制和主从复制等等。

对于开发者可能对binlog并不怎么关注,但是对于运维或者架构⼈员来讲是⾮常重要的。

如何开启mysql的binlog⽇志呢?在my.inf主配置⽂件中直接添加三⾏[plain]1. log_bin=ON2. log_bin_basename=/var/lib/mysql/mysql-bin3. log_bin_index=/var/lib/mysql/mysql-bin.index三个参数来指定,第⼀个参数是打开binlog⽇志第⼆个参数是binlog⽇志的基本⽂件名,后⾯会追加标识来表⽰每⼀个⽂件第三个参数指定的是binlog⽂件的索引⽂件,这个⽂件管理了所有的binlog⽂件的⽬录当然也有⼀种简单的配置,⼀个参数就可以搞定[plain]1. log-bin=/var/lib/mysql/mysql-bin这⼀个参数的作⽤和上⾯三个的作⽤是相同的,mysql会根据这个配置⾃动设置log_bin为on状态,⾃动设置log_bin_index⽂件为你指定的⽂件名后跟.index这些配置完毕之后对于5.7以下版本应该是可以了,但是我们这个时候⽤的如果是5.7及以上版本的话,重启mysql服务会报错。

这个时候我们必须还要指定⼀个参数[plain]1. server-id=123454随机指定⼀个不能和其他集群中机器重名的字符串,如果只有⼀台机器,那就可以随便指定了有了上述的配置之后,我们就可以重新启动我们的mysql了service mysqld restart启动成功之后,我们可以登陆查看我们的配置是否起作⽤[plain]1. show variables like '%log_bin%'下⾯我们可以找到这个⽬录来看⼀下因为我这⾥已经操作过数据库了,所以能看到这⾥有多个mysql-bin的⽂件,还有⼀个mysql-bin.index的⽂件,我们可以打开这个⽂件来看⼀下到这⾥,我们的binlog⽇志就打开了。

MySQL之六5.7日志文件

MySQL之六5.7日志文件

MySQL之六5.7⽇志⽂件修改英⽂localectl set-locale LANG=en_US.UTF-8localectl list-localesCentos 7 编译安装: yum groupinstall "Development Tools" -y 安装包组 yum install ncurses-devel openssl-devel libevent-devel jemalloc-devel cmakesystemd service unit fileMySQL安装参考:⼀、⽇志查询⽇志(query log):记录建⽴的客户端连接和执⾏的语句慢查询⽇志(slow query log) :记录所有执⾏时间超过long_query_time秒的所有查询(并不⼀定是查询语句⾃⼰执⾏速度慢导致的)错误⽇志(error log) :记录mysql服务的启停时正确和错误的信息,还记录启动、停⽌、运⾏过程中的错误信息。

⼆进制⽇志(binary log) :记录所有更改数据的语句,还⽤于复制,恢复数据库⽤中继⽇志(reley log):mysql 主从复制架构中⽤到的⽇志事务⽇志:transaction log (⽀持事务型存储引擎的ACID功能)更新⽇志: -log-update (⼆进制⽇志已经代替了⽼的更新⽇志,更新⽇志在MySQL 5.1中不再使⽤)官⽅⽂档:⼆、⽇志刷新mysql> FLUSH LOGS;shell> mysqladmin flush-logsshell> mysqladmin refresh三、查询当前⽇志记录的状况mysql>show variables like 'log%';(是否启⽤了⽇志)mysql> show master status;(怎样知道当前的⽇志)mysql> show master logs;(显⽰⼆进制⽇志的数⽬)四、⽇志4.1、⼀般查询⽇志(不启⽤) 了解即可查询⽇志分为⼀般查询⽇志和慢查询⽇志,它们是通过查询是否超出变量 long_query_time 指定时间的值来判定的。

mysql的日志类型

mysql的日志类型

mysql的日志类型(实用版)目录1.MySQL 日志概述2.MySQL 日志类型及其作用3.配置 MySQL 日志的方法正文【MySQL 日志概述】MySQL 是一款流行的开源关系数据库管理系统,它在数据库管理过程中会产生各种日志。

这些日志记录了数据库的运行状态、操作记录等信息,对于数据库的监控、故障排查以及数据恢复具有重要的参考价值。

【MySQL 日志类型及其作用】MySQL 的日志类型主要有以下几种:1.错误日志(Error Log):记录了 MySQL 服务器在运行过程中遇到的错误和警告信息,对于数据库管理员来说,通过查阅错误日志可以快速定位和解决数据库运行中出现的问题。

2.查询日志(Query Log):记录了数据库中的 SQL 查询语句,包括查询的执行时间、结果行数等信息。

查询日志对于优化数据库性能和排查慢查询非常有帮助。

3.慢查询日志(Slow Query Log):与查询日志类似,慢查询日志记录了执行时间较长的 SQL 查询语句。

通过分析慢查询日志,可以找出性能瓶颈,针对性地优化数据库。

4.事务日志(InnoDB Log):MySQL 使用 InnoDB 存储引擎时,会记录事务日志。

事务日志记录了事务的启动、提交、回滚等信息,对于保证数据一致性和恢复事务非常重要。

5.二进制日志(Binary Log):记录了数据库中的数据变更操作,包括对表的增删改操作。

二进制日志对于数据备份和恢复具有重要作用。

【配置 MySQL 日志的方法】MySQL 的日志类型和记录级别可以通过配置文件进行调整。

以下是一些常用的配置参数:1.log-error:设置是否记录错误日志,取值为 0 或 1。

默认值为 1。

2.log-queries-not-using-indexes:设置是否记录未使用索引的查询日志,取值为 0 或 1。

默认值为 0。

3.log-slow-queries:设置是否记录慢查询日志,取值为 0 或 1。

sql analyze用法

sql analyze用法

sql analyze用法SQL Analyze是MySQL的一个性能分析工具,用于收集和生成数据库查询的统计信息。

它可以提供有关问题查询的详细信息,例如查询执行时间,扫描行数,索引使用情况等。

通过分析这些统计信息,开发人员可以确定查询存在的性能瓶颈,并进一步优化查询。

SQL Analyze的使用方法包括以下几个步骤:1. 开启查询日志:首先需要确保MySQL的查询日志功能已经开启。

可以通过修改f文件中的参数来开启查询日志。

将以下内容添加到f文件中:```[mysqld]general_log = ongeneral_log_file = /var/log/mysql/query.log```然后重启MySQL服务使配置生效。

查询日志将记录所有的查询语句。

2. 执行测试查询:在开启查询日志后,执行一些测试查询,包括可能导致性能问题的查询语句。

3. 分析查询日志:使用MySQL提供的分析工具来分析查询日志。

可以使用命令行工具mysqlanalyze,或者通过MySQL的GUI工具如MySQL Workbench来执行分析。

以下是使用mysqlanalyze的命令行示例:```mysqlanalyze slow_queries.log > analysis.txt```这将把分析结果输出到一个文本文件中。

分析结果会列出所有的慢查询,并提供每个查询的执行时间、扫描行数、索引使用情况等详细信息。

4. 优化查询:根据分析结果来优化查询。

可以针对性能较差的查询进行优化,例如添加索引、重新编写查询语句等。

根据具体情况,可能需要修改数据表的结构或者重构查询逻辑。

除了上述基本的使用方法外,还可以通过以下方式进一步使用SQL Analyze来进行性能分析:1. 查询过滤:可以使用命令行工具或GUI工具提供的过滤功能,只分析特定条件下的查询。

例如,可以只分析执行时间超过一定阈值的查询,或者只分析特定数据表的查询。

查看mysql的binlog日志存放的位置(转)

查看mysql的binlog日志存放的位置(转)

查看mysql的binlog⽇志存放的位置(转)
⾸先查看配置⽂件中是否启⽤Binlog⽇志
[Linux ~]# vim /etc/f
f内容:
log-bin = mysqlbin #默认配置
⼀般放在/var/lib/mysql
⽐如上⾯的设置重启数据库会⽣成mysqlbin.000001⽂件
⾃定义⽂件存放位置
修改配置⽂件,vi /etc/f,找到log-bin的部分
配置⾃动清理在f⽂件中,这个⽂件路径不知道的话执⾏mysql --help | grep 'Default options' -A 1,就会列出⽂件的路径来
然后重启service mysql restart,去新建的⽬录下看看,已经有最新的⽇志了
下⾯列⼏个常⽤的命令
1、查看⽇志开启状态 show variables like 'log_%';
2、查看所有binlog⽇志列表 show master logs;
3、查看最新⼀个binlog⽇志的编号名称,及其最后⼀个操作事件结束点 show master status;
4、刷新log⽇志,⽴刻产⽣⼀个新编号的binlog⽇志⽂件,跟重启⼀个效果 flush logs;
5、清空所有binlog⽇志 reset master;
6、⽇志查看,因为是⼆进制⽂件没法⽤vi等打开,可以⽤mysql的mysqlbinlog打开,/usr/bin/mysqlbinlog /home/logs/mysql-bin.000001,当然每个⼈路径可能不⼀样,这个只能⾃⼰去找了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MYSQL启用日志,和查看日志
mysql有以下几种日志:
错误日志:-log-err
查询日志:-log
慢查询日志:-log-slow-queries
更新日志:-log-update
二进制日志:-log-bin
是否启用了日志
mysql>show variables like'log_%';
怎样知道当前的日志
mysql>show master status;
顯示二進制日志數目
mysql>show master logs;
看二进制日志文件用mysqlbinlog
shell>mysqlbinlog mail-bin.000001
或者shell>mysqlbinlog mail-bin.000001|tail
在配置文件中指定log的輸出位置.
Windows:Windows的配置文件为my.ini,一般在MySQL的安装目录下或者c:\Windows下。

Linux:Linux的配置文件为f,一般在/etc下。

在linux下:
Sql代码
1.#在[mysqld]中輸入
2.#log
3.log-error=/usr/local/mysql/log/error.log
4.log=/usr/local/mysql/log/mysql.log
5.long_query_time=2
6.log-slow-queries=/usr/local/mysql/log/slowquery.log
#在[mysqld]中輸入
#log
log-error=/usr/local/mysql/log/error.log
log=/usr/local/mysql/log/mysql.log
long_query_time=2
log-slow-queries=/usr/local/mysql/log/slowquery.log
windows下:
Sql代码
1.#在[mysqld]中輸入
2.#log
3.log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"
4.log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"
5.long_query_time=2
6.log-slow-queries=
"E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"
#在[mysqld]中輸入
#log
log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"
log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"
long_query_time=2
log-slow-queries="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"
开启慢查询
long_query_time=2--是指执行超过多久的sql会被log下来,这里是2秒log-slow-queries=/usr/local/mysql/log/slowquery.log--将查询返回较慢的语句进行记录
log-queries-not-using-indexes=nouseindex.log--就是字面意思,log 下来没有使用索引的query
log=mylog.log--对所有执行语句进行记录。

相关文档
最新文档