MySQL数据库日志知识与企业应用实践
为了帮助管理员快速发现数据库的相关运行信息,MySQL为用户提供了几种日志种类,具体见表
默认情况下,以上所有的日志都处于非激活状态(Linux环境)。当激活日志时,所有的日志都默认配置在数据文件的目录下。管理员也可以对上述日志进行轮询切割,实现该功能常见的命令是mysqladmin flush-logs、mysqldump的“-F”或“–master-data”参数等,下面主要先介绍一下错误日志
(1)错误日志的介绍与配置
**1*错误日志的介绍
MySQL的错误日志用于记录MySQL服务进程mysqld在启动/关闭或运行过程中遇到的错误信息。
2.错误日志的记录配置
MySQL的错误日志通常由mysqld或mysqld_safe程序产生,前文已经讲解过MySQL的启动原理,因此,可利用如下方法配置记录MySQL错误日志。
方法1:在my.cnf配置文件中调整,注意,是在[mysqld_safe]或[mysqld]模块的下面进行配置。命令如下:
[mysqld]
log-error = /data/mysql/error.err /data/mysql/error.err 都是自己手动创建的,记得修改所属的用户与所属的组为mysql ,或者修改操作权限
chown -R mysql:mysql /data/mysql
chmod -R 755 /data/mysql
方法2:在启动MySQL服务的命令里加入记录错误日志的参数。
示例如下:
log-error=/data/mysql/error/error.err
查看到的最终结果为:
show variables like ‘log_error%’;
修改文件夹的权限
3.错误日志轮询
管理员可以使用命令轮询错误日志,例如可以按天轮询,具体方法如下:
[root@songls~]# cd /data/mysql/error/ #<==切换到日志目录下。
[root@songls mysql]# mv error.err error_$(date +%F).err #<==将错误日志按天
移动改名。
[root@songls data]# mysqladmin flush-logs #<==执行刷新日志命令。
[root@songls data]# ls -l error.err
-rw-rw----. 1 mysql mysql 0 Mar 19 19:34 error.err #<==新的错误日志诞生了。