您的位置:首页 > 数据库 > MySQL

MySQL(Slow)

2016-08-31 00:00 495 查看
mysql profiling:

show variables like '%profiling%';
set profiling = 1;
show profiles;
show profile for query 1;

SHOW PROFILE [type [, type] ... ]
[FOR QUERY n]
[LIMIT row_count [OFFSET offset]]

type:
ALL
| BLOCK IO
| CONTEXT SWITCHES
| CPU
| IPC
| MEMORY
| PAGE FAULTS
| SOURCE
| SWAPS

mysql slow:

set [session|global]  slow_query_log = on;
set [session|global]  slow_query_log_file = '/xx/xx/xx/xx-slow.log';
set [session|global]  long_query_time = 2.00;
set [session|global]  log_queries_not_using_indexes = on;

mysqldumpslow
sudo mysqldumpslow /var/lib/mysql/zming-test-slow.log
sudo mysqldumpslow  -s c  -t 10 /var/lib/mysql/zming-test-slow.log
sudo mysqldumpslow  -s t  -t 20 /var/lib/mysql/zming-test-slow.log
sudo mysqldumpslow  -s t  -t 20 -g "md5" /var/lib/mysql/zming-test-slow.log
sudo tail  /var/lib/mysql/zming-test-slow.log

mysql sql log:

set [session|global] general_log = on;
set [session|global] general_log_file == '/xx/xx/xx/xx-sql.log';

sudo tail /var/lib/mysql/zming-test.log

mysqldumpslow

Count: 1  Time=104.95s (104s)  Lock=0.01s (0s)  Rows=0.0 (0), zming[zming]@zming-test
insert into OpenInterestRecord.4conscn_deal (`email`,`volume`,`in`,`out`,`net_in`,`range`)
select
t.email as email,
ifnull(t.volume,N) as volume,
ifnull(i.volume,N) as `in`,
ifnull(o.volume,N) as `out`,
ifnull(i.volume,N)-ifnull(o.volume,N) as `net_in`,
'S' as `range`
from(
select
registrant_email as email,
count(dn) as volume
from zm.whois_4conscn
where
N=N
group by registrant_email
order by volume desc
) t left join (
select
whois.email,
ifnull(whois.volume,N) + ifnull(record.volume,N) as volume
from(
select
registrant_email as email,
count(dn) as volume
from zm.whois_4conscn
where
start_time between 'S' and 'S'
group by registrant_email
order by volume desc
) whois left join(
SELECT
registrant_email as email,
count(id) as volume
from zm.whois_4conscn_record
where
operation_type='S' and
start_time between 'S' and 'S'
group by registrant_email
order by volume desc
)record on whois.email=record.email
) i on t.email=i.email
left join (
SELECT
registrant_email as email,
count(id) as volume
from zm.whois_4conscn_record
where
operation_type='S' and
newest_time between 'S' and 'S'
group by registrant_email
order by volume desc
) o on o.email=t.email

Count: 1  Time=85.96s (85s)  Lock=0.00s (0s)  Rows=0.0 (0), zming[zming]@zming-test
insert into PendingPriceStatistics.4conscomcn_info (`dn`,`price`,`email`,`dealer`,`platform`,`range`)select
trade.dn as dn,
trade.price as price,
whois.registrant_email as email,
info.isDealer as dealer,
trade.platform as platform,
'S' as `range`
from zm.trade_4conscomcn trade left join zm.whois_4conscomcn whois on trade.dn=whois.dn left join zm.whoisInfoAnalysis_4conscomcn info on whois.registrant_email=info.email
where
trade.`newest_time` between 'S' and 'S'

Count: 1  Time=67.56s (67s)  Lock=0.00s (0s)  Rows=0.0 (0), zming[zming]@zming-test
insert into PendingPriceStatistics.6numscom_info (`dn`,`price`,`email`,`dealer`,`platform`,`range`)select
trade.dn as dn,
trade.price as price,
whois.registrant_email as email,
info.isDealer as dealer,
trade.platform as platform,
'S' as `range`
from zm.trade_6numscom trade left join zm.whois_6numscom whois on trade.dn=whois.dn left join zm.whoisInfoAnalysis_6numscom info on whois.registrant_email=info.email
where
trade.`newest_time` between 'S' and 'S'

Count: 1  Time=60.27s (60s)  Lock=0.01s (0s)  Rows=0.0 (0), zming[zming]@zming-test
insert into PendingPriceStatistics.4conscn_info (`dn`,`price`,`email`,`dealer`,`platform`,`range`)select
trade.dn as dn,
trade.price as price,
whois.registrant_email as email,
info.isDealer as dealer,
trade.platform as platform,
'S' as `range`
from zm.trade_4conscn trade left join zm.whois_4conscn whois on trade.dn=whois.dn left join zm.whoisInfoAnalysis_4conscn info on whois.registrant_email=info.email
where
trade.`newest_time` between 'S' and 'S'

Count: 1  Time=51.54s (51s)  Lock=0.00s (0s)  Rows=0.0 (0), zming[zming]@zming-test
insert into PendingPriceStatistics.4conscom_info (`dn`,`price`,`email`,`dealer`,`platform`,`range`)select
trade.dn as dn,
trade.price as price,
whois.registrant_email as email,
info.isDealer as dealer,
trade.platform as platform,
'S' as `range`
from zm.trade_4conscom trade left join zm.whois_4conscom whois on trade.dn=whois.dn left join zm.whoisInfoAnalysis_4conscom info on whois.registrant_email=info.email
where
trade.`newest_time` between 'S' and 'S'

Count: 1  Time=26.17s (26s)  Lock=0.00s (0s)  Rows=1.0 (1), zming[zming]@zming-test
SELECT count(N) FROM zm.`trade_4conscomcn_record`where
operation_type = 'S' and
`newest_time` between 'S' and 'S'

Count: 1  Time=22.65s (22s)  Lock=0.00s (0s)  Rows=1.0 (1), zming[zming]@zming-test
SELECT count(N) FROM zm.`trade_4conscom_record`where
operation_type = 'S' and
`newest_time` between 'S' and 'S'

Count: 2  Time=18.46s (36s)  Lock=0.00s (0s)  Rows=1.0 (2), zming[zming]@zming-test
select md5 from `zm`.`trade_4conscn_record` where  md5 = 'S'

Count: 2  Time=16.13s (32s)  Lock=0.00s (0s)  Rows=1.0 (2), zming[zming]@zming-test
select md5 from `zm`.`trade_6numscom_record` where  md5 = 'S'

Count: 1  Time=13.06s (13s)  Lock=0.00s (0s)  Rows=1.0 (1), zming[zming]@zming-test
SELECT ifnull(min(price),N)
from zm.trade_4conscomcn_record
WHERE
(operation_type='S' OR operation_type='S') AND
(newest_time between 'S' and 'S' or
start_time between 'S' and 'S')

Count: 1  Time=11.14s (11s)  Lock=0.00s (0s)  Rows=1.0 (1), zming[zming]@zming-test
select md5 from `zm`.`trade_4conscom_record` where  md5 = 'S'

Count: 2  Time=1.91s (3s)  Lock=0.00s (0s)  Rows=1.0 (2), zming[zming]@zming-test
SELECT ifnull(min(price), N)    from zm.trade_4conscomcn_record   WHERE    (operation_type='S' OR operation_type='S') AND    (newest_time between 'S' and 'S' or   start_time between 'S' and 'S')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MySQL Slow Profile Profiling