立即学习:https://edu.csdn.net/course/play/10084/214943?utm_source=blogtoedu
MYSQL日志管理
用于实现MYSQL数据库故障排查2,数据恢复,性能分析,高可用架构搭建等。
分为:
通用日志
错误日志
二进制日志
慢查询日志
中继日志
MYSQL通用日志
通用日志:用于记录所有连接和所有执行的SQL语句,可以记录到日志文件或表,缺省未开启该日志。mysqld按照它接收的顺序记录语句到查询日志。这可能与执行的顺序不同。
开启及文件位置
1、缺省位置为/$datadir/hostname.log
2、开启通用日志,变量general_log=1,通常不建议开启
3、位置及文件名修改,变量general_log_file
4、设定输出对象(表或文件),变量log_output
日志归档
shell> mv hostname.log hostname.log.old
shell> mysqladmin flush-logs 或 mysql > flush general logs
shell> mv host_name.err-old backuk-directory
通用日志相关系统变量
show variables like '%general%';
show variables like 'log_output';
错误日志:记录MYSQL启动关闭详细信息以及运行过程中所有较为严重的警告和错误信息的一个文本文件,用于排错。
文件位置
1、默认开启,缺省位置为/var/log/mysqld.log
2、可以通过系统变量log_error修改日志文件位置及名称
日志文件内容格式
1、时间 【错误级别】 错误信息
2、有些日志信息不一定包含错误级别
错误日志归档
shell> mv mysqld.log mysqld.log.old
shell> mysqladmin flush-logs或者 mysql> flush error logs
shell> mv mysqld.log.old backup-directory
1、查看日志所在位置
show variables like 'log_error';
2、修改日志文件位置
#vim /etc/my.cnf
[mysqld]
log_error=/var/lib/mysql/mysqld.log
#systemctl restart mysqld
3、修改innodb_log_file_size大小至512M
set global innodb_log_file_size=512*1024*1024;
#vim /etc/my.cnf
[mysqld]
innodb_log_file_size=512M
#systemctl restart mysqld
4、修改日志文件日志时间格式
--mysql 5.7 在初次安装完毕后,需要修改日志日期时间输出配置
--缺省值为UTC,与本地时间有差异
show variables like 'log_timestamps';
set global_log_timestamps='SYSTEM';
###持久化设置
#vim /etc/my.cnf
[mysqld]
log_timestamps=SYSTEM