MySQL是一种开源关系型数据库管理系统,它以其稳定性、可扩大性、极佳的性能和可靠的安全性而备受追捧,常常被用于各类 Web 利用程序开发及大范围的在线事务处理等场合。随着 MySQL 数据库的使用,有一个需要非常注意的是,是MySQL日志的搜集和清算。
1.待清算日志:
MySQL 有三类日志,分别为慢查询日志、毛病日志和二进制日志,慢查询日志记录服务器启动后产生的所有 SQL 履行,耗时超过 long_query_time 指定的数值,MySQL 会将日志记录在慢查询日志中。毛病日志和二进制日志,则分别记录了在服务器履行进程中产生的意外故障和 MySQL 主从复制情况。这三类日志都会随着服务器运行时间不断搜集和增长,所以需要定期删除一定时间之前的日志,以保存更多的空间和确保日志数量可以控制在最低限度,避免日志的过大对系统的影响。
2.清算日志的 MySQL 语句:
(1)清算慢查询日志:
DELETE FROM `mysql`.`slow_log` WHERE `start_time`
(2)清算毛病日志:
DELETE FROM `mysql`.`errlog` WHERE `time`
(3)清算二进制日志:
PURGE BINARY LOGS BEFOREDATE_SUB(NOW(), INTERVAL 7 DAY);
3. 上述清算日志的 MySQL 语句可以通过履行定时服务或自动化脚本来实现 MySQL 日志定时清算,从而保证 MySQL 数据库的正常运行。