亚洲全黄无码一级在线看_国产剧情久久久性色_无码av一区二区三区无码_亚洲成a×人片在线观看

當前位置: 首頁 > 科技新聞 >

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

時間:2019-11-12 20:58來源:網絡整理 瀏覽:
概述 優(yōu)化SQL,是DBA常見的工作之一。如何高效、快速地優(yōu)化一條語句,是每個DBA經常要面對的一個問題。對于一名DBA來說,掌握一門語言配

概述

優(yōu)化SQL,是DBA常見的工作之一。如何高效、快速地優(yōu)化一條語句,是每個DBA經常要面對的一個問題。對于一名DBA來說,掌握一門語言配合自己的工作是非常必要的。相對于shell的簡單、perl的飄逸,Python是一種嚴謹?shù)母呒壵Z言。其具備上手快、語法簡單、擴展豐富、跨平臺等多種優(yōu)點。很多人把它稱為一種“膠水”語言,通過大量豐富的類庫、模塊,可以快速搭建出自己需要的工具。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

今天主要分享一下韓鋒大佬自己寫的一個“MySQL語句優(yōu)化輔助工具”,通過這個小工具,可以自動調用命令將上面這些內容一次性推給DBA,大大加速優(yōu)化的過程。

下面介紹下這個小工具,文末附領取方式。

環(huán)境

模塊 - MySQLDB

模塊 - sqlparse

Python版本 = 2.7.3

1、腳本內容

因為腳本內容比較多,所以就截部分了。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備
分享一款MySQL語句優(yōu)化輔助工具--DBA必備

2、調用方法

python mysql_tuning.py -p tuning_sql.ini -s '你的sql'

參數(shù)說明:

-p 指定配置文件名稱

-s 指定SQL語句

3、配置文件

這里分別是[database]描述數(shù)據(jù)庫連接信息,[option]運行配置信息。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

4、輸出說明

1) 標題部分

包含運行數(shù)據(jù)庫的地址信息及數(shù)據(jù)版本信息。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

2) 原始SQL

用戶執(zhí)行輸入的SQL,這部分主要是為了后續(xù)對比SQL改寫時使用。語句顯示時使用了格式化。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

3) 系統(tǒng)級參數(shù)

腳本選擇顯示了部分與SQL性能相關的參數(shù)。這部分是寫死在代碼中的,如需擴展需要修改腳本。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

4) 優(yōu)化器開關

下面是和優(yōu)化器相關的一些參數(shù),通過調整這些參數(shù)可以人為干預優(yōu)化器行為。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

5) 執(zhí)行計劃

就是調用explain extended的輸出結果。如果結果過長,可能出現(xiàn)顯示串行的問題(暫時未解決)。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

6) 優(yōu)化器改寫后的SQL

通過這里可判斷優(yōu)化器是否對SQL進行了某種優(yōu)化(例如子查詢的處理)。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

7) 統(tǒng)計信息

在SQL語句中所有涉及到的表及其索引的統(tǒng)計信息都會在這里顯示出來。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

8) 運行狀態(tài)信息

在會話級別對比了執(zhí)行前后的狀態(tài)(SHOW STATUS),并將出現(xiàn)變化的部分顯示出來。需要注意的是,因為收集狀態(tài)數(shù)據(jù)是采用SELECT方式,會造成個別指標的誤差(例如Com_select)。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

9) PROFILE詳細信息

調用SHOW PROFILE得到的詳細信息。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

10) PROFILE匯總信息

根據(jù)PROFILE的資源消耗情況,顯示不同階段消耗對比情況(TOP N),直觀顯示"瓶頸"所在。

分享一款MySQL語句優(yōu)化輔助工具--DBA必備

【責任編輯:華軒 TEL:(010)68476606】
推薦內容