mysql日志详细解析.docx

上传人:b****3 文档编号:12692463 上传时间:2023-04-21 格式:DOCX 页数:31 大小:27.67KB
下载 相关 举报
mysql日志详细解析.docx_第1页
第1页 / 共31页
mysql日志详细解析.docx_第2页
第2页 / 共31页
mysql日志详细解析.docx_第3页
第3页 / 共31页
mysql日志详细解析.docx_第4页
第4页 / 共31页
mysql日志详细解析.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

mysql日志详细解析.docx

《mysql日志详细解析.docx》由会员分享,可在线阅读,更多相关《mysql日志详细解析.docx(31页珍藏版)》请在冰豆网上搜索。

mysql日志详细解析.docx

mysql日志详细解析

mysql日志详细解析

MySQL日志:

主要包含:

错误日志、查询日志、慢查询日志、事务日志、二进制日志;

日志是mysql数据库的重要组成部分。

日志文件中记录着mysql数据库运行期间发生的变化;也就是说用来记录mysql数据库的客户端连接状况、SQL语句的执行情况和错误信息等。

当数据库遭到意外的损坏时,可以通过日志查看文件出错的原因,并且可以通过日志文件进行数据恢复。

错误日志

在mysql数据库中,错误日志功能是默认开启的。

并且,错误日志无法被禁止。

默认情况下,错误日志存储在mysql数据库的数据文件中。

错误日志文件通常的名称为hostname.err。

其中,hostname表示服务器主机名。

错误日志信息可以自己进行配置的,错误日志所记录的信息是可以通过log-error和log-warnings来定义的,其中log-err是定义是否启用错误日志的功能和错误日志的存储位置,log-warnings是定义是否将警告信息也定义至错误日志中。

默认情况下错误日志大概记录以下几个方面的信息:

服务器启动和关闭过程中的信息(未必是错误信息,如mysql如何启动InnoDB的表空间文件的、如何初始化自己的存储引擎的等等)、服务器运行过程中的错误信息、事件调度器运行一个事件时产生的信息、在从服务器上启动服务器进程时产生的信息。

下面我们来定义mysql错误日志的功能:

一般而言,日志级别的定义没有回话变量都只是在全局级别下进行定义。

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

mysql>SHOW GLOBALVARIABLESLIKE '%log%';

+-----------------------------------------+-----------------------------------+

| Variable_name                           |Value                             |

+-----------------------------------------+-----------------------------------+

|back_log                               |50                               |

| binlog_cache_size                       |32768                             |

| binlog_direct_non_transactional_updates|OFF                              |

| binlog_format                          |MIXED                            |

| binlog_stmt_cache_size                  |32768                             |

| expire_logs_days                        |0                                 |

|general_log                            |OFF                              |

| general_log_file                        | /mydata/data/stu18.log            |

| innodb_flush_log_at_trx_commit          |1                                 |

| innodb_locks_unsafe_for_binlog          |OFF                              |

| innodb_log_buffer_size                  |8388608                           |

| innodb_log_file_size                    |5242880                           |

| innodb_log_files_in_group               |2                                 |

| innodb_log_group_home_dir               |./                                |

| innodb_mirrored_log_groups              |1                                 |

|log                                    | OFF                              |

|log_bin                                |ON                               |

| log_bin_trust_function_creators         |OFF                               |

|log_error                              |  /mydata/data/.err|定义错误日志

|log_output                             |FILE                             |

| log_queries_not_using_indexes           |OFF                               |

| log_slave_updates                       |OFF                               |

| log_slow_queries                       |OFF                              |

| log_warnings                            |1              是否把警告信息写入错误日志中

| max_binlog_cache_size                   |18446744073709547520              |

| max_binlog_size                         |1073741824                        |

| max_binlog_stmt_cache_size              |18446744073709547520              |

| max_relay_log_size                      |0                                 |

|relay_log                              |                                  |

| relay_log_index                         |                                   |

| relay_log_info_file                     |relay-log.info                    |

| relay_log_purge                         |ON                                |

| relay_log_recovery                      |OFF                               |

| relay_log_space_limit                   |0                                 |

| slow_query_log                          |OFF                               |

|slow_query_log_file                    |  /mydata/data/stu18-slow.log      |

|sql_log_bin                            |ON                               |

|sql_log_off                            |OFF                              |

|sync_binlog                            |0                                |

| sync_relay_log                          |0                                 |

| sync_relay_log_info                     |0                                 |

+-----------------------------------------+-----------------------------------+

其中,log_error可以直接定义为文件路径,也可以为ON|OFF;log_warings只能使用1|0来定义开关启动。

更改错误日志位置可以使用log_error来设置形式如下:

 

1

2

3

[root@stu18data]# vim/etc/f

[mysqld]

Log_error=DIR/[filename]

解析:

其中,DIR参数指定错误日志的路径filename参数是错误日志的名称,没有指定该参数时默认为主机名。

重启mysql服务器即可生效。

查看mysql错误日志:

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

[root@stu18data]# tail-20.err

130813 15:

30:

50 InnoDB:

Starting shutdown...

130813 15:

30:

51 InnoDB:

Shutdowncompleted; logsequencenumber1630920

13081315:

30:

51 [Note] /usr/local/mysql/bin/mysqld:

Shutdowncomplete

13081315:

30:

52 mysqld_safemysqldfrompid file /mydata/data/.pidended

13081315:

30:

53 mysqld_safeStartingmysqlddaemonwithdatabasesfrom /mydata/data

13081315:

30:

54 InnoDB:

TheInnoDBmemoryheapisdisabled     #禁用了InnoDBmemory的堆功能。

13081315:

30:

54 InnoDB:

Mutexesandrw_locksuseGCCatomicbuiltins #Mutexes(互斥量)和rw_locks(行级锁)是GCC编译的是InnoDB内置的。

13081315:

30:

54 InnoDB:

Compressedtablesusezlib1.2.3     #默认压缩工具是zlib

13081315:

30:

55 InnoDB:

Initializingbufferpool,size=128.0M    #InnoDB引擎的缓冲池(bufferpool)的值大小

13081315:

30:

55 InnoDB:

Completedinitializationofbufferpool

13081315:

30:

55 InnoDB:

highestsupported file format isBarracuda.

130813 15:

30:

57 InnoDB:

Waiting for the backgroundthreadstostart

13081315:

30:

58 InnoDB:

5.5.33started;logsequencenumber1630920

13081315:

30:

58 [Note]Server hostname (bind-address):

 '0.0.0.0';port:

3306

13081315:

30:

58 [Note]  - '0.0.0.0' resolvesto  '0.0.0.0';  #0.0.0.0会反解主机名,这里反解失败

13081315:

30:

58 [Note]ServersocketcreatedonIP:

 '0.0.0.0'.

13081315:

30:

58 [Note]EventScheduler:

Loaded0events    #事件调度器没有任何事件,因为没有装载。

13081315:

30:

58 [Note] /usr/local/mysql/bin/mysqld:

ready for connections. #mysql启动完成等待客户端的请求。

Version:

  '5.5.33-log'  socket:

  '/tmp/mysql.sock'  port:

3306 Sourcedistribution  #创建一个本地sock用于本地连接。

删除错误日志:

在mysql5.5.7之前:

数据库管理员可以删除很长时间之前的错误日志,以保证mysql服务器上的硬盘空间。

mysql数据库中,可以使用mysqladmin命令开启新的错误日志。

mysqladmin命令的语法如下:

mysqladmin–uroot–pflush-logs也可以使用登录mysql数据库中使用FLUSHLOGS语句来开启新的错误日志。

在mysql5.5.7之后:

服务器将关闭此项功能。

只能使用重命名原来的错误日志文件,手动冲洗日志创建一个新的:

方式如下:

 

1

2

3

4

[root@stu18data]#mv.err .err.old

 [root@stu18data]# mysqladminflush-logs

[root@stu18data]#ls

hellodb myclass mysql-bin.000003 mysql-bin.index          .pid    ibdata1     mysql    mysql-bin.000004 performance_schema   ib_logfile0 mysql-bin.000001 .err           test   ib_logfile1 mysql-bin.000002 .err.old

更多信息请查阅官方文档:

查询日志:

默认情况下查询日志是关闭的。

由于查询日志会记录用户的所有操作,其中还包含增删查改等信息,在并发操作大的环境下会产生大量的信息从而导致不必要的磁盘IO,会影响mysql的性能的。

如若不是为了调试数据库的目的建议不要开启查询日志。

查看查询日志是否开启:

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

mysql>SHOW GLOBALVARIABLESLIKE '%log%';

+-----------------------------------------+-----------------------------------+

| Variable_name                           |Value                             |

+-----------------------------------------+-----------------------------------+

|back_log                               |50                               |

| binlog_cache_size                       |32768                             |

| binlog_direct_non_transactional_updates|OFF                              |

| binlog_format                          |MIXED                            |

| binlog_stmt_cache_size                  |32768                             |

| expire_logs_days                        |0                                 |

|general_log                            |OFF        #定义查询日志是否开启 |                   

| general_log_file                        | /mydata/data/stu18.log   #定义查询日志的文件地址名称                         |

| innodb_flush_log_at_trx_commit          |1                                 |

| innodb_locks_unsafe_for_binlog          |OFF                               |

| innodb_log_buffer_size                  |8388608                           |

| innodb_log_file_size                    |5242880                           |

| innodb_log_files_in_group              |2                                |

| innodb_log_group_home_dir               |./                                |

| innodb_mirrored_log_groups              |1                                 |

|log                                    | OFF          #是否开启日志 (若开启则表示开启所有的日志功能)                |

|log_bin                                |ON                               |

| log_bin_trust_function_creators         |OFF                               |

|log_error                              | /mydata/data/.err |

|log_output                             |FILE   #日志的输出的位置         |       

| log_queries_not_using_indexes           |OFF                               |

| log_slave_updates                       |OFF                              |

| log_slow_queries                        |OFF                               |

| log_warnings                            |1                                 |

| max_binlog_cache_size                  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1