Java工程师要掌握什么?有哪些MySQL日志汇总?一个优秀的Java后端开发工程师一定要掌握MySQL数据库,而日志文件记录了影响MySQL数据库的各种类型活动,因此也成为其必须要掌握的知识。今天千锋就给大家介绍MySQL数据库中常见的日志文件。
MySQL数据库中常见的日志文件有错误日志、二进制日志、慢查询日志和查询日志。
错误日志
错误日志文件对MySQL的启动、运行、关闭过程进行了记录。比如:
mysql> show variables like 'log_error';
+---------------+---------------------+
| Variable_name | Value |
+---------------+---------------------+
| log_error | /var/log/mysqld.log |
+---------------+---------------------+
1 row in set (0.03 sec)
可以看到错误日志的路径和文件名,默认情况下错误文件的文件名为服务器的主机名,即:hostname.err。当出现MySQL数据库不能正常启动时,第一个必须查找的文件就是错误日志文件,该文件记录了出错信息,能够帮助我们找到问题。
二进制日志
二进制日志记录了对数据库执行更改的所有操作,但是不包括select和show这类操作,因为这类操作对数据本身并没有修改,如果你还想记录select和show操作,那只能使用查询日志了,而不是二进制日志。
此外,二进制还包括了执行数据库更改操作的时间和执行时间等信息。二进制日志主要作用有:恢复(recovery)、复制(replication)、审计(audit),你可以通过配置参数 log-bin[=name] 可以启动二进制日志。如果不指定name,则默认二进制日志文件名为主机名,后缀名为二进制日志的序列号。
慢查询日志
慢查询日志用来记录响应时间超过阈值的SQL语句,所以我们可以设置一个阈值,将运行时间超过该值的所有SQL语句都记录到慢查询日志文件中。该阈值可以通过参数long_query_time来设置,默认为10秒。慢查询日志分析工具包括mysqldumpslow命令、pt-query-digest工具。
查询日志
查看日志记录了所有对MySQL数据库请求的信息,不论这些请求是否得到了正确的执行。默认为主机名.log。默认情况下不启动查询日志,必须要先开启。参考代码:
mysql> set global general_log='ON';
Query OK, 0 rows affected (0.05 sec)
mysql> show variables like "general_log%";
+------------------+--------------------------------------------+
| Variable_name | Value |
+------------------+--------------------------------------------+
| general_log | ON |
| general_log_file | /var/lib/mysql/iz2zeaf3cg1099kiidi06mz.log |
+------------------+--------------------------------------------+
2 rows in set (0.11 sec)
了解更多MySQL数据库日志的知识点,你可以选择专业的学习,让你自己能够提高学习效率。由浅入深递进式的一些讲解,会带你一站式搞定不可思议的Java开发技术!