php 输出mysql错误日志文件_MySQL 错误日志(Error Log)
发布日期:2021-06-24 16:28:21 浏览次数:2 分类:技术文章

本文共 3712 字,大约阅读时间需要 12 分钟。

同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分。MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日

同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分。MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志,慢查询日志,等等。这些日志可以帮助我们定义mysqld内部发生的事情,数据库性能故障,记录数据的变更历史,用户恢复数据库等等。本文主要描述错误日志文件。

1、MySQL日志文件系统的组成

a、错误日志:记录启动、运行或停止mysqld时出现的问题。

b、通用日志:记录建立的客户端连接和执行的语句。

c、更新日志:记录更改数据的语句。该日志在MySQL 5.1中已不再使用。

d、二进制日志:记录所有更改数据的语句。还用于复制。

e、慢查询日志:记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。

f、Innodb日志:innodb redo log

缺省情况下,所有日志创建于mysqld数据目录中。

可以通过刷新日志,来强制mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。

当你执行一个FLUSH LOGS语句或执行mysqladmin flush-logs或mysqladmin refresh时,则日志被老化。

对于存在MySQL复制的情形下,从复制服务器将维护更多日志文件,被称为接替日志。

--------------------------------------分割线 --------------------------------------

Ubuntu 14.04下安装MySQL

《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF

Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL

Ubuntu 14.04下搭建MySQL主从服务器

Ubuntu 12.04 LTS 构建高可用分布式 MySQL 集群

Ubuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb

MySQL-5.5.38通用二进制安装

--------------------------------------分割线 --------------------------------------

2、错误日志

错误日志是一个文本文件。

错误日志记录了MySQL Server每次启动和关闭的详细信息以及运行过程中所有较为严重的警告和错误信息。

可以用--log-error[=file_name]选项来开启mysql错误日志,该选项指定mysqld保存错误日志文件的位置。

对于指定--log-error[=file_name]选项而未给定file_name值,mysqld使用错误日志名host_name.err 并在数据目录中写入日志文件。

在mysqld正在写入错误日志到文件时,执行FLUSH LOGS 或者mysqladmin flush-logs时,服务器将关闭并重新打开日志文件。

建议在flush之前手动重命名错误日志文件,之后mysql服务将使用原始文件名打开一个新文件。

以下为错误日志备份方法:

shell> mv host_name.err host_name.err-old

shell> mysqladmin flush-logs

shell> mv host_name.err-old backup-directory

3、实战演示

#启用错误日志,缺省情况下文件名为: hostname.err

#下面2种方式均可进行错误日志的配置

--log-error=file_name #命令行选项(command option)

log-error=file_Name #配置文件(configure file)

#查看当前的错误日志配置,缺省情况下位于数据目录

mysql> show variables like 'log_error';

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

| Variable_name | Value |

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

| log_error | /var/lib/mysql/SZDB.err |

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

1 row in set (0.00 sec)

#查看当前mysql server错误日志文件

SZDB:/var/lib/mysql # tail SZDB.err

140906 22:06:45 InnoDB: Completed initialization of buffer pool

140906 22:06:45 InnoDB: highest supported file format is Barracuda.

140906 22:06:45 InnoDB: Waiting for the background threads to start

140906 22:06:46 InnoDB: 5.5.37 started; log sequence number 1605345

140906 22:06:47 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306

140906 22:06:47 [Note] - '0.0.0.0' resolves to '0.0.0.0';

140906 22:06:47 [Note] Server socket created on IP: '0.0.0.0'.

140906 22:06:47 [Note] Event Scheduler: Loaded 0 events

140906 22:06:47 [Note] /usr/sbin/mysqld: ready for connections.

Version: '5.5.37-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL)

#停止mysql服务器

SZDB:~ # service mysql stop

Shutting down MySQL.... done

#使用配置文件来设置log-error参数

SZDB:~ # echo "log-error=/tmp/SZDB.err">>/etc/my.cnf

SZDB:~ # echo "skip_opt">>/etc/my.cnf #添加一个异常参数skip_opt

SZDB:~ # grep -v ^# /etc/my.cnf

[mysqld]

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

log-error=/tmp/SZDB.err

skip_opt

#Author : Leshami

#Blog :

#启动mysql服务器

SZDB:~ # mysqld_safe --user=mysql &

[1] 7315

SZDB:~ # 140907 13:40:33 mysqld_safe Logging to '/tmp/SZDB.err'.

140907 13:40:33 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

140907 13:40:33 mysqld_safe mysqld from pid file /var/lib/mysql/SZDB.pid ended

[1]+ Done mysqld_safe --user=mysql

SZDB:~ # more /tmp/SZDB.err

140907 13:40:33 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

140907 13:40:33 [ERROR] /usr/sbin/mysqld: ambiguous option '--skip-opt' (--skip-optimizer_prune_level)

140907 13:40:33 [ERROR] Aborting #出现错误提示为有歧义的参数,实例终止

140907 13:40:33 mysqld_safe mysqld from pid file /var/lib/mysql/SZDB.pid ended

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

转载地址:https://blog.csdn.net/weixin_33826897/article/details/113211763 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mysql utf8 字节_mysql utf8编码
下一篇:mysql innodb排他锁_MySQL/InnoDB中,乐观锁、悲观锁、共享锁、排它锁、行锁、表锁、死锁概念的理解...

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月02日 12时45分26秒