Oracle SQL tuning 数据库优化步骤图文教程
SQL Turning 是【shì】📭Quest公司出【gōng sī chū】⏳品的Quest Central软件中【ruǎn jiàn zhōng】的一个【de yī gè】工具【gōng jù】。Quest Central是【shì】📭一款集【yī kuǎn jí】成化🥟、图形化👎、跨平台👛的数据库管理解决方🔔案,可以同时管理 Oracle、DB2 和 SQL server 数据库。
一【yī】、SQL Tuning for SQL Server简介👽
SQL语句的优化【yōu huà】对🔽发挥数🚌据库的【jù kù de】➿最佳性能【néng】🌾非常关【fēi cháng guān】键🤽。然而不🔝幸的是,应用优【yīng yòng yōu】🐂化通常☔由于时📕间和资源的因【yuán de yīn】素而被【sù ér bèi】忽略。SQL Tuning (SQL优化【yōu huà】)模块可🔯以对比和评测【hé píng cè】特定应用中👓SQL语句的运行性【yùn háng xìng】能【néng】🌾,提出智🛣能【néng】化的👼优化建【yōu huà jiàn】议,帮助用户改善☔应用的【yīng yòng de】响应时间。SQL优化模【yōu huà mó】块具有非介入式SQL采集【cǎi jí】、自动优化【yōu huà】和专家建议等功能【néng】🌾,全面改善🧗SQL优化工【yōu huà gōng】作【zuò】。
二、SQL Tuning for SQL Server的使用【de shǐ yòng】💚
1、打开【dǎ kāi】Quest Database Management Solutions弹出窗🏘口如图【kǒu rú tú】🛳1所示
图1
2、在红色标记处🎁打开【dǎ kāi】🥣SQL Tuning 优化【yōu huà】SQL
(1)建立连【jiàn lì lián】🚊接。
在Quest Central主界面🎤上的“Database”树上选【shù shàng xuǎn】择【zé】“SQL Server”,然后在下方出🍨现的🙏“Tools”框中选📒择【zé】“SQL Tuning”选项,打开“Lanch SQL Tuning for SQL Server Connections”对话框【duì huà kuàng】(图【tú】📉2、图【tú】📉3)。我们在【wǒ men zài】这里建🗃立数据库服务器的连接,以后的【yǐ hòu de】🏄分析工【fèn xī gōng】作都会在它上🐷面完成。
图【tú】🥇2 “建立连【jiàn lì lián】接🥞”对话框
图3
双击【jī】🛢“New Connection”图标,在弹出窗口中输入数【shū rù shù】🌍据库的信息,单击【dān jī】👢“OK”,然后单【rán hòu dān】击【jī】👢“Connect”即可㊙。
(2)分析原🎨始SQL语句🏯 ,在单击【zài dān jī】“Connect”后将弹【hòu jiāng dàn】🤡出一个【chū yī gè】新窗口,如图4
图4
在打开窗口的“Oriangal SQL”文本框内输入【nèi shū rù】需要分析的原始【shǐ】🍆SQL语句,红色标🏰记处选【jì chù xuǎn】⏭择对应的数据【de shù jù】✅库名,SQL语句代码如下【mǎ rú xià】💁:
图5 分析原始SQL语句
原始SQL语句
然后点击工具栏上的“Execute”按钮,执行原【zhí háng yuán】始的SQL语句【yǔ jù】🥪,SQL Tuning会自动【huì zì dòng】👒分析SQL的执行计划,并把分🥧析结果【xī jié guǒ】🕘显示到界面上【jiè miàn shàng】🥥(图5)。
(3)优化SQL。
现在我们点击工具栏🔸上的🌔“Optimize Statement”按钮,让【ràng】SQL Tuning开始优🌱化【huà】SQL,完成后,可以看【kě yǐ kàn】到SQL Tuning产生了🤬19条与原🔯始SQL等价的【děng jià de】优化【huà】方🙂案【àn】(图【tú】6)。
图6 SQL优化方案
(4)获得最优SQL。
接下来,我们来【wǒ men lái】执行上面产生的优化🎂方案【fāng àn】,以选出性能最佳的等效【xiào】SQL语句【yǔ jù】💾。在列表中【zhōng】💸选择需要执行的优化🎂方案【fāng àn】(默认已全部选📞中【zhōng】💸),然后点👾击工具🚷栏上的“Execute”按钮旁【àn niǔ páng】👸边的下🎪拉菜单,选择“Execute Selected”。等到所🗜有♉SQL运行完成后,点击界【diǎn jī jiè】🐩面左方的“Tuning Resolution”按钮【àn niǔ】,
可以看到最优【dào zuì yōu】的SQL已经出来啦【lái lā】,运行时【yùn háng shí】🆎间竟然【jiān jìng rán】可以提【kě yǐ tí】🙍高【gāo】🕶21%!(图7)
图【tú】7 “Tuning Resolution”界面💖
最优的SQL语句如下:
5)学习书🙄写专家🤨级的【jí de】SQL语句【yǔ jù】 。
优化后的SQL语句
SELECT dbo.Person_BasicInfo.*,
dbo.Graduater_GraduaterRegist.RegistNO AS RegistNO,
dbo.Graduater_GraduaterRegist.RegistTime AS BaoDaoTime,
dbo.Graduater_GraduaterRegist.RegistMan AS RegistMan,
dbo.Graduater_Business.ComeFrom AS ComeFrom,
dbo.Graduater_Business.Code AS Code,
dbo.Graduater_Business.Status AS Status,
dbo.Graduater_Business.ApproveResult AS ApproveResult,
dbo.Graduater_Business.NewCorp AS NewCorp,
dbo.Graduater_Business.CommendNumber AS CommendNumber,
dbo.Graduater_Business.EmployStatus AS EmployStatus,
dbo.Graduater_Business.NewCommendTime AS NewCommendTime,
dbo.Graduater_Business.GetSource AS GetSource,
dbo.Graduater_Business.EmployTime AS EmployTime,
dbo.Graduater_Business.Job AS Job,
dbo.Graduater_Business.FillMan AS FillMan,
dbo.Graduater_Business.FillTime AS FillTime,
dbo.Graduater_Business.IsCommendOK AS IsCommendOK,
dbo.Graduater_Business.ApproveUser AS ApproveUser,
dbo.Graduater_Business.ApproveTime AS ApproveTime,
dbo.Graduater_Business.RegistTime AS RegistTime,
dbo.Graduater_Business.EmployCorp AS EmployCorp,
dbo.Graduater_Business.JobRemark AS JobRemark,
CASE WHEN dbo.Graduater_Business.ComeFrom = 'WS' THEN '网上登记'
WHEN dbo.Graduater_Business.ComeFrom = 'HP' THEN '华普大厦【xià】'
WHEN dbo.Graduater_Business.ComeFrom = 'JD' THEN '精典大厦【xià】'
WHEN dbo.Graduater_Business.ComeFrom = 'MC' THEN '赛马场【sài mǎ chǎng】'
WHEN ComeFrom = 'ZX' THEN '高指中🛒心🔟' END AS ComeFromName,
dbo.Person_Contact.Address AS Address,
dbo.Person_Contact.Zip AS Zip,
dbo.Person_Contact.Telephone AS Telephone,
dbo.Person_Contact.Mobile AS Mobile,
dbo.Person_Contact.Email AS Email,
dbo.Person_Contact.IM AS IM,
dbo.Person_Skill.ForeignLanguage AS ForeignLanguage,
dbo.Person_Skill.ForeignLanguageLevel&nbs
关键词【guān jiàn cí】🏤:Oracle,SQL,数据库🥄
阅读本文后您有什么感想? 已有 人给出评价!
- 0
- 0
- 0
- 0
- 0
- 0