仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 609|回复: 9
打印 上一主题 下一主题

[学习教程] MYSQL编程:用函数格局化EXPLAIN PLAN

[复制链接]
若天明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:22:20 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
即使对于MySQL的商业化的企业版来说,也没有高昂的许可证成本,当你将其与像甲骨文和微软之类的大型专有商业数据库比较的话。<pstyle="TEXT-INDENT:2em">EXPLAINPLAN命令的输入了局是办理SQL效力低下成绩的最主要的诊断工具之一。此命令加载一个事情表格(默许称号为PLAN_TABLE),表格中带有Oracle优化器为SQL语句盘算的实行企图步骤。比方:<pstyle="TEXT-INDENT:2em">EXPLAINPLANFOR<pstyle="TEXT-INDENT:2em">SELECTempno,ename<pstyle="TEXT-INDENT:2em">FROMemp<pstyle="TEXT-INDENT:2em">WHEREenameLIKES%;<pstyle="TEXT-INDENT:2em">因为PLAN_TABLE中的行构成了一个品级,对其举行查询必要使用SELECT语句中的两个庞大子语句――STARTWITH与CONNECTBY。第一次在Oracle9i中呈现并在10g中失掉扩大的DBMS_XPLAN使格局化及显现实行企图更加简单。<pstyle="TEXT-INDENT:2em">DBMS_XPLAN.DISPLAY是一个表格标值函数,它显现PLAN_TABLE的内容。与惯例的纯量函数SUBSTR或总计函数SUM分歧的是,表格函数前往一个完全的行汇合(rowset)。它们用在SELECT语句的FROM子语句中,后面必需加上TABLE这个词。如:<pstyle="TEXT-INDENT:2em">SELECT*<pstyle="TEXT-INDENT:2em">FROMTABLE(DBMS_XPLAN.DISPLAY);<pstyle="TEXT-INDENT:2em">列表A显现的是上述EXPLAINPLAN语句的了局,并由DBMS_XPLAN.DISPLAY格局化。<pstyle="TEXT-INDENT:2em">值得注重的是,DBMS_XPLAN还能从存储在体系全局区(SystemGlobalArea,SGA)内的指针显现“及时”实行企图。列表B显现的是由用户SCOTT实行的统一SQL语句。经由过程检察V$SESSION视图,你能够找到实行SCOTT义务的最初一个SQLID。这反过去又可输出到DBMS_XPLAN.DISPLAY_CURSOR中,取得指针所利用的实行企图。<pstyle="TEXT-INDENT:2em">最初,DBMS_XPLAN.DISPLAY_AWR函数可用来查寻Oracle10g的主动负荷信息库(AutomaticWorkloadRepository,AWR)取得的汗青SQL语句,并显现它的实行企图。它显现一个你能够会见的含七天汗青纪录的转动窗口。<pstyle="TEXT-INDENT:2em">一切这三个函数都是和谐SQL语句的壮大工具。BobWatkins(OCP、MCDBA、MCSE、MCT)是一个有25年履历的盘算机专业人士,处置过手艺培训师、参谋与数据库办理员等职。

这些过程被存储和运行在数据库服务器上,以减少在客户端的处理过程,从而最大限度地提高了处理能力,因为通常情况下数据库服务器会运行地更快。存储过程并不是MySQL独有的功能,但是这个最近新增加的功能使得这个数据库比以前更具吸引力了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-8 23:25

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表