mariadb日志分类: 查询日志:query log  
mariadb日志分类:
查询日志:query log
慢查询日志:slow query log 查询操作时间超过指定时间
错误日志:error log 也包含启动关闭服务信息
二进制日志(重要):binary log
中继日志:reley log
事务日志:transaction log
1.查询日志(一般不开启):记录查询操作
general_log=ON|OFF
general_log_file=HOSTNAME.log 保存在相当路径(不能解析主机名的话保存为localhost.log)
log_output=TABLE|FILE|NONE 以什么形式记录
#set @@global.general_log=1 #命令行开启方式,重启失效
2.慢查询日志(默认关闭,生产中应开启):查询操作时间超过指定时间
show global variables like 'long_query_time'; 查看默认时长
select @@GLOBAL.long_query_time;
set global long_query_time=
slow_query_log=ON|OFF
#log_slow_queries=xx.log 5.6版本后被废
slow_query_log_file=HOSTNAME-slow.log
3.错误日志(一般开启)
① Mysqld启动和关闭过程中输出的事件信息
② mysqld运行中产生的错误信息
③ event scheduler事件调度器运行一个event时产生的日志信息
log_error=/var/log/mariadb/mariadb.log|OFF
log_warnings=1|0 是否记录警告信息
4.二进制日志(重要)
功能:用于通过重放日志文件中的事件来生成数据副本
记录导致数据改变或潜在导致数据改变的sql语句
show {BINARY|MASTER} LOGS; 查看mariadb自行管理使用中的二进制日志文件列表
show {BINERY|MASTER} status; 查看正在使用中的日志文件
show binlog events in 'mysql-bin.000001' [from num] [limit rows]; 查看记录的事件
二进制日志记录格式:binlog_fORMat
基于sql语句记录(SBR):statement
基于行记录(RBR):row
混合模式(MBR):mixed,让系统自行判断该基于哪种模式(默认)
#运行时修改SET SESSION binlog_format =
二进制日志文件构成:
日志文件:mysql-bin.文件名后缀 二进制格式
索引文件:mysql-bin.index 文本格式
服务器变量:
log_bin=/PATH/TO/BIN_LOG_FILE|OFF
#sql_log_bin= {ON|OFF} 是否记录
#session.sql_log_bin={ON|OFF} 控制某会话中的“写”操作语句是否会被记录于日志文件中;(重放时应临时关闭)
max_binlog_size=100M 单个二进制日志文件的最大体积,默认为1G
sync_binlog=0或大于0的整数
#默认0异步记录性能更好,由操作系统自己决定什么时候刷新缓存到持久化设置,如果这个值比0大,它指定了两次刷新到磁盘的动作之间间隔多少次二进制日志写操作。设置1最安全但是最耗内存,
很多MySQL DBA设置的sync_binlog并不是最安全的1,而是100或者是0。这样牺牲一定的一致性,可以获得更高的并发和性能。
mysqlbinlog:客户端命令工具(直接查看二进制日志)
--start-datetime="YYYY-MM-DD hh:mm:ss" 开始事件
--stop-datetime="YYYY-MM-DD hh:mm:ss" 结束时间
-j, --start-position=# 从哪个位置开始
--stop-position=# 从哪个位置结束
--user, --host, --passWord
二进制日志事件格式:
# at 553
#160831 9:56:08 server id 1 end_log_pos 624 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1472608568;
BEGIN
;
事件的起始位置:# at 553
事件发生的日期时间:#160831 9:56:08
事件发生的服务器id:server id 1
事件的结束位置:end_log_pos 624
事件的类型:Query
事件发生时所在服务器执行此事件的线程的ID: thread_id=2
语句的时间戳与将其写入二进制日志文件中的时间差:exec_time=0
错误代码:error_code=0
设定事件发生时的时间戳:SET TIMESTAMP=1472608568;
事件内容:BEGIN
5.中继日志:
从服务器上记录下来从主服务器的二进制日志文件同步过来的事件;
6.事务日志:
事务型存储引擎innodb用于保证事务特性的日志文件:
redo log
undo log
--结束END--
本文标题: mariadb的日志
本文链接: https://lsjlt.com/news/35998.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0