设为首页 加入收藏

TOP

mysql中的日志(一)(四)
2015-11-21 01:39:03 来源: 作者: 【 】 浏览:1
Tags:mysql 日志
pe` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log' 1 row in set (0.01 sec) mysql> SHOW CREATE TABLE mysql.slow_log \G *************************** 1. row *************************** Table: slow_log Create Table: CREATE TABLE `slow_log` ( `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `query_time` time NOT NULL, `lock_time` time NOT NULL, `rows_sent` int(11) NOT NULL, `rows_examined` int(11) NOT NULL, `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL, `thread_id` bigint(21) unsigned NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log' 1 row in set (0.01 sec)

?

针对 general_log and slow_query_log
?
三、慢查询日志
默认情况下查询日志是关闭的
?
慢查询是指执行时长(包括等待CPU/IO的时间)超过 long_query_time 这个变量定义的时长的查询
?
开销比较小,可以用于定位性能问题,建议开启
?
配置
?
//slow-query-log[={0,1}] Dynamic
//slow_query_log_file[=FILENAME] Dynamic
//log-output=PATH_TO_FILE/TABLE/NONE Dynamic
//log-slow-admin-statements[={OFF,ON}]
//log-queries-not-using-indexes[={OFF,ON}] Dynamic
//log-slow-slave-statements[={OFF,ON}] slave
//log-short-format[={FALSE,TRUE}]
//long_query_time[=NUMERIC] Dynamic
//min-examined-row-limit[=NUMERIC] Dynamic
     
long_query_time = 2
slow-query-log = on
slow-query-log-file = /data/logs/mysql/slow_query.log
log-queries-not-using-indexes
log-output=FILE

?

?
动态修改
?
mysql> SET GLOBAL slow_query_log = 'ON';
mysql> SET GLOBAL slow_query_log = 'OFF';
远程调试 (log-output=TABLE) 同上
关闭慢查询日志
1
2
log-output=NONE
log_slow_queries=0
日志分析
mysqldumpslow / mysqlsla / myprofi / mysql-explain-slow-log / mysqllogfilter
?
这里我使用 pt-query-digest (percona toolkit)
?
# 390ms USER TIME, 10ms system TIME, 15.67M rss, 105.84M vsz 
# CURRENT DATE: Thu DEC 29 13:22:42 2014 
# Hostname: test  
# Files: slow.log 
# Overall: 776 total, 11 UNIQUE, 0.00 QPS, 0.00x concurrency _____________ 
# TIME range: 2014-09-10 04:03:19 TO 2014-12-29 05:02:51 
# Attribute          total     MIN     MAX     avg     95%  stddev  median 
# ============     ======= ======= ======= ======= ======= ======= ======= 
# EXEC TIME          5657s      2s     33s      7s     23s      6s      5s 
# LOCK TIME            33s       0     19s    43ms    98us   715ms    38us 
# ROWS sent        323.38k       0 107.36k  426.73    0.99   6.35k       0 
# ROWS examine     323.39k       0 107.36k  426.74       0   6.35k       0 
# Query SIZE       217.95k      38     562  287.61  420.77   81.78  284.79 

?

?
?
四、二进制日志
?
默认没有开启
?
二进制日志记录 MySQL 数据库中所有与更新相关的操作,即二进制日志记录了所有的 DDL(数据定义语言)语句和 DML(数据操纵语言)语句,但是不包括数据查询语句。
?
最重要的两个用途 :恢复数据库和主从复制
?
配置
?
http://dev.mysql.com/doc/refman/5.6/en/replication-options-binary-log. html
?
binlog_format=mixed
max_binlog_size=1024M
log_bin=/data/logs/ mysql/binarylog/mysql_bin
expire_logs_days=0
binlog_cache_size = 2M
max_binlog_cache_size = 4M
log-bin-index 指向 master-bin 这个文件,记录有哪些分块的Binlog文件名。
?
log-bin 记录Binlog文件名前缀,后缀会用数字递增
?
Binlog有3种格式,STATMENT,ROW,MIXED,混合格式(mixed)会在适当时候切换row和statment格式
?
https://dev.mysql.com/doc/refman/5.1/en/binary-log-mixed.html

mysql> SHOW VARIABLES LIKE 'log_bin%';
+---------------------------------+---------
首页 上一页 1 2 3 4 5 6 下一页 尾页 4/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MYSQL序言 下一篇rsync+inotify-tools+ssh实现mysq..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: