成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL性能優化實戰

數據庫 MySQL 數據庫運維
本文向您介紹通過優化查詢語句等措施環境數據庫壓力過大導致運行緩慢甚至死機的方法。

過年這段時間由于線上數據庫經常壓力過大導致響應非常緩慢甚至死機,咬咬牙下大決心來解決效率不高的問題!

首先是由于公司秉承快速開發原則,頻繁上線,導致每次忽視了性能問題!日積月累,所以導致系統越來越慢,所以如果你的系統查詢語句本來就優化的很好了可能參考意義不大!

提取慢查詢日志文件,應該在你的DataDir目錄下面

通過程序處理慢查詢文件,將文件格式的慢查詢導入到數據庫中:

1 mysql> desc slow_query;
2 +---------------+-------------+------+-----+---------+-------+
3 | Field         | Type        | Null | Key | Default | Extra |
4 +---------------+-------------+------+-----+---------+-------+
5 | Date          | varchar(32) | NO   |     |         |       | 查詢發生的時間
6 | user          | varchar(64) | NO   |     |         |       | 
7 | host          | varchar(64) | NO   |     |         |       | 
8 | content       | text        | NO   |     |         |       | 將Statement進行Mask后的語句,
便于Group By 9 | query_time | int(11) | NO | | | | 查詢所用時間,直接性能指標 10 | lock_time | int(11) | YES | | 0 | | 等待鎖定的時間 11 | rows_sent | int(11) | YES | | 0 | | 返回的結果行數 12 | rows_examined | int(11) | YES | | 0 | | 掃描行數 13 | statement | text | YES | | NULL | | 實際查詢語句 14 +---------------+-------------+------+-----+---------+-------+

然后發揮您的想象力在這個表中盡力捕捉你想捕捉的,那類型語句壓力最大、掃描行數最多、等鎖最久……

比如:

優化后:

mysql> select sum(query_time)/count(*),count 
(*),sum(query_time),min(Date),Max(Date) from slow where Date>'2008-02-20 22:50:52'
and Date<'2008-02-21 17:34:35'; +--------------------------+----------+-----------------+---------------------+---------------------+ | sum(query_time)/count(*) | count(*) | sum(query_time) | min(Date) | Max(Date) | +--------------------------+----------+-----------------+---------------------+---------------------+ | 5.7233 | 2197 | 12574 | 2008-02-20 22:51:16 | 2008-02-21 17:34:10 | +--------------------------+----------+-----------------+---------------------+---------------------+ 1 row in set (0.09 sec)

優化前:

mysql> select sum(query_time)/count(*),count(*),sum(query_time),min(Date),Max(Date) from slow 
where Date>'2008-02-17 22:50:52' and Date<'2008-02-18 17:34:35'; +--------------------------+----------+-----------------+---------------------+---------------------+ | sum(query_time)/count(*) | count(*) | sum(query_time) | min(Date) | Max(Date) | +--------------------------+----------+-----------------+---------------------+---------------------+ | 2.5983 | 16091 | 41810 | 2008-02-17 22:50:58 | 2008-02-18 17:34:34 | +--------------------------+----------+-----------------+---------------------+---------------------+ 1 row in set (0.15 sec)

再比如,優化前:

基本信息:

慢查詢統計從 2008-02-17 17:59:34 到2008-02-18 22:45:22時間段,接近29個小時的數據;

總共有慢查詢28914個,平均一小時有1000個慢查詢;(花了一天優化降到每小時100個的樣子了,成就感啊)

所有慢查詢耗費總時間75690秒;

慢查詢時間設置是大于2秒

參數說明

sum--總執行時間(秒);

count--執行次數;

avg--平均執行時間(秒);

content--類似SQL語句的表達通式,其中'DD'代表數字;

statement--某一條具體執行的SQL語句

由于訪問時的鎖,導致update非常慢:

1 mysql> select count(*) as n,sum(query_time) as s, sum(query_time)/count(*) as avg,
substring_index(statement,' ',2)
as u from slow where statement like 'update%' and query_time>14 group by u; 2 +-----+------+---------+--------------------------+ 3 | n | s | avg | u | 4 +-----+------+---------+--------------------------+ 5 | 7 | 112 | 16.0000 | update conversation | 6 | 151 | 2413 | 15.9801 | update user | 7 | 4 | 65 | 16.2500 | update user_modification | 8 +-----+------+---------+--------------------------+

說明程序中還是存在一些忘記釋放事務鎖的情況

最耗費資源的10個查詢:

其中第1,2,5應該是同一類查詢,這樣的話這一類查詢占總查詢的一半以上,每分鐘出現10個以上這樣的慢查詢,需要重點解決!

1 mysql> select sum(query_time) as sum, count(*) as count, sum(query_time)/count(*) 
as avg,statement from slow wher 2 e host like '%69.12.23.%' group by content order by sum desc limit 0,10\G 3 *************************** 1. row *************************** 4 sum: 27326 5 count: 11681 6 avg: 2.3394 7 …………

 

【編輯推薦】

  1. 詳解MySQL數據庫提升性能的八種方法
  2. 優化MySQL插入方法的五個妙招
責任編輯:佚名 來源: IT168
相關推薦

2018-03-30 18:17:10

MySQLLinux

2017-03-29 14:44:20

網絡性能優化

2022-05-17 09:02:30

前端性能優化

2010-07-06 16:22:14

2019-12-13 10:25:08

Android性能優化啟動優化

2018-09-18 17:20:14

MySQL優化數據庫

2018-05-09 14:45:50

蘇寧前端Nodejs

2015-05-30 10:04:24

線下公開課51CTO沙龍MDSA

2018-05-09 08:35:59

2020-10-19 19:45:58

MySQL數據庫優化

2017-03-14 18:48:06

Android性能優化內存優化

2010-03-02 09:53:14

MySQL性能優化

2020-03-23 15:15:57

MySQL性能優化數據庫

2015-07-09 13:19:17

Ceph分布式存儲性能調優

2019-09-03 09:41:48

運維架構技術

2018-06-07 08:54:01

MySQL性能優化索引

2022-11-11 08:16:02

java性能技術

2019-01-15 09:34:30

MySQL高性能優化

2011-04-25 09:11:15

2024-10-09 23:32:50

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天操天天摸天天干 | 欧美日韩精品综合 | 国产精品一区二区三区四区 | 蜜桃视频在线观看免费视频网站www | 欧美久久久久久久久中文字幕 | 请别相信他免费喜剧电影在线观看 | www.夜夜骑.com | 一区二区国产精品 | 96av麻豆蜜桃一区二区 | 宅女噜噜66国产精品观看免费 | 日本 欧美 三级 高清 视频 | 久久精品一区二区 | www.日韩| 狠狠夜夜 | 久久电影一区 | 成人三级视频 | 午夜网| 成人av电影在线 | 中文字幕视频在线 | www.嫩草 | 免费视频久久 | 国产激情毛片 | 亚洲精品www久久久久久广东 | 欧美成人激情 | 黄免费观看视频 | 国产精品一区二区三 | 精品乱码一区二区 | 国产在线一区二区三区 | 黄色成人av | 国产精品明星裸体写真集 | 日日骚视频| 久久国产99 | 日韩高清中文字幕 | 日本色婷婷 | 国产成人精品一区二区三区在线 | 91麻豆精品国产91久久久久久久久 | 欧美精三区欧美精三区 | 尤物在线精品视频 | 久久中文字幕一区 | 一区二区三区在线观看免费视频 | 亚洲品质自拍视频网站 |