日志管理
日志配置
错误日志
- 记录了服务器运行中产生的错误信息
- 记录了服务在启动和停止是所产生的信息
- 在从服务器上如果启动了复制进程的时候,复制进程的信息也会被记录
- 记录event错误日志
vim /etc/mysql/mysql.conf.d/mysqld.cnf
log_error = /var/log/mysql/error.log
# 默认开启,服务器运行中的警告日志也会记录在错误日志中
log_warning = {0|1}
查询日志:对除了慢查日志中记录的查询信息都将记录下来,这将对服务器主机产生大量的压力,所以对于繁忙的服务器应该关闭这个日志
vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 指定查询日志的位置
general_log_file = /var/log/mysql/mysql.log
# 启动或关闭查询日志,默认是关闭的
general_log = 1
# 指定存放查询日志的位置,可以放在文件中,也可以放在数据库的表中
log_output = {TABLE|FILE|NONE}
慢查询日志:默认为关闭状态,记录下来查询时间超过设定时长的查询,这些查询日志将被慢查日志记录下来
vim /etc/mysql/mysql.conf.d/mysqld.cnf
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
# 定义默认的时长
long_query_time = 2
# 设定是否将没有使用索引的查询操作记录到慢查询日志
log-queries-not-using-indexes
二进制日志:默认开启,精确的记录了用户对数据库中的数据进行操作的命令和操作的数据对象
二进制日志格式:statement(基于语句)、row(基于行)、mixed(混合方式)
二进制日志事件:position(基于位置)、datetime(基于时间)
vim /etc/mysql/mysql.conf.d/mysqld.cnf
log_bin = /var/lib/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
binlog_do_db = include_database_name
binlog_ignore_db = include_database_name