仓酷云

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

[学习教程] MSSQL网站制作之Enterprise Manager 10 g

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:38:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我们分析上面的两个操作,都有一个“删除数据”的过程。enterprise
OracleDatabase10g内情

OracleDatabase10g:为DBA供应的最好前20位的特征(十三)

作者ArupNandaOTN

第13周
EnterpriseManager10g

最初,会商一种办理和使用Oracle的一站式工具—不管关于初学者仍是专家

您在一样平常的DBA相干举动中利用甚么工具?我比来在一个用户群集会中提出了这个成绩。

谜底依DBA的事情履历而有所分歧。年夜部分初级办理员偏幸复杂的命令行SQL*Plus(我的团体偏好),而其他的人则偏幸利用一些第三方产物。可是,统一个成绩在进门级DBA那边却失掉了分歧反响:在这一群体中,EnterpriseManager(EM)明显是他们的选择。

这些偏好不难了解。OracleEnterpriseManager自从几年前推出以来一向不休举行完美,它入手下手时是字符形式显现的SQL*DBA,随后开展为基于操纵体系的客户端工具,最初具有了Java作风。EM供应的信息十分具体,充足完成年夜多半DBA义务,可作为不肯大概得空懂得新语法而且但愿利用GUI工具来办理罕见数据库义务(如增加用户、修正数据文件和反省回退段)的用户的办理计划。诊断程序包为功能调治供应了十分必要的GUI撑持。

可是,拦阻EM普遍利用的一个次要成绩是它没法跟上数据库服务器自己的开展。比方,EM的Oracle9i数据库版本不撑持子分区(该特征在Oracle8i中初次引进)。

Oracle数据库10g中的EM新版本改动了这类情形。它具有新的系统布局和新的界面,而最主要的是,它具有一个功效十分壮大而完美的工具箱,供应从初学者到初级用户所需的一切DBA妙技集。而最好的地方在于,它是安装自己的一部分,无需分外用度。假如您正在评价第三方工具,您固然能够将EM到场评价行列中,从而使合作加倍剧烈。即便您是那种“深信命令行”的DBA(象我如许),您也会十分浏览EM在某些情形下能为您所供应的匡助。

在本文中,我将为您先容新的EM。因为该工具所涉局限甚广,因而不成能在此会商一切的特征;我将在此先容几个基础特征,并供应其他质料的线索。我将遵守本系列之精力供应实践的示例,演示怎样利用该工具办理实践成绩。

系统布局

缺省情形下,在安装10g软件时,即安装EM10g时,在观点上它与之前版本的分歧的地方在于,它不是客户端安装的工具;实践上它是位于数据库服务器自己上的HTTP服务器(称为DB把持台)。(拜见。)您可使用任何扫瞄器检察EM界面。



:EM系统布局

DB把持台的端标语可在$ORACLE_HOME/install/portlist.ini中找到。以下是一个文件的示例;关于您来讲,端口大概不不异。

UltraSearchHTTPportnumber=5620

iSQL*PlusHTTPportnumber=5560

EnterpriseManagerAgentPort=

EnterpriseManagerConsoleHTTPPort(starz10)=5500

EnterpriseManagerAgentPort(starz10)=1830

从这个文件中我们懂得到,数据库starz10的代办署理程序监听端口1830,而EM把持台监听5500。我们能够经由过程输出以下URL来挪用EM登录画面:

http://starz/em/console/logon/logon

该URL修改登录画面,从中您能够以DBA用户登录。在我们的示例中,我们将以SYS登录。

主数据库主页

登录后即呈现主数据库主页。主页的上部供应对主要细节的疾速扫瞄。(拜见。)



:主数据库主页(上部)

在上图中已圈出了最主要的一些部分,并用本文中编号的援用对其举行了标注。起首,请注重标为“General”(1)的部分;这一部分显现了有关数据库的一些最基础细节,如数据库从3月20日起已启动,和实例称号等。OracleHome显现为一个超链接,当单击该链接时,将显现一切产物和共享该主目次的一切其他Oracle数据库。Listener的超链接显现注册到监听器(其称号就显现在紧靠它的下方)的一切数据库和实例。最初,显现主机名(starz)。

在名为“HostCPU”(2)的部分中,夺目地显现了CPU的具体信息。“ActiveSessions”(3)部分显现了举动的会话及其以后形态(4)。从下面我们看到,99%的工夫被处于守候形态的会话所占用。(我们稍后将找出招致这些守候的缘故原由。)“HighAvailability”(5)部分显现了与可用性相干的信息。比方,“InstanceRecoveryTime”的值(实例的MTTRTarget的值)断定实例溃散恢复大概必要的工夫。

“SpaceUsage”(6)部分很风趣:它显现与23个段相干的告诫。(一样,稍后再具体先容这些告诫。)“DiagnosticSummary”(7)部分供应数据库优秀运转的提要信息。所发明的功能成绩的数目暗示主动数据库诊断监控程序(ADDM)—在10g中新增的自诊断引擎—自动辨认出几成绩。EM还主动剖析您的情况,以断定是不是违背了所倡议的最好理论;此剖析的了局显现在“PolicyViolation”部分。最初,EM扫描警报日记,并显现任何最新的ORA毛病。这类信息十分有代价—在警报日记中主动扫描Oracle毛病使您制止了手动搜刮这些毛病的良多贫苦。

在数据库主页的下部,如所示,我们能够更具体地检察个中的一些动静。“Alerts”(1)部分显现了必要您注重的一切相干警报,每一个警报都能够便利地举行设置。以第一个警报(2)为例,它显现Archiver历程由于某种缘故原由而挂起。固然,下一步就是断定其缘故原由。要查明缘故原由,只需单击它便可。您将从包括该毛病的alert.log文件中取得更多具体信息。在此情况下,妨碍点是一个已填满的闪回恢复区;我们只需将其清空,Archiver便可从头入手下手事情。



:主数据库主页(下部)

另外一个警报(3)是有关守候的:数据库在69%的工夫中守候一个与守候类“Application”相干的守候。还记得主页上部是怎样显现一个会话处于守候形态的吗?这个警报向我们显现它正在守候甚么。单击超链接将会当即为您显现实践的守候。

下一个警报(4)显现一个审计项目,即用户SYS从特定的客户端呆板毗连到数据库。一样,经由过程单击超链接,您能够显现有关该毗连的一切具体信息。最初一个警报(5)显现某些工具有效。单击超链接,您将转到工具被考证有效的画面。

如您所见,数据库主页如同显现必要您注重的一切事项的仪表板。该界面未将具体信息聚积在屏幕上,其界面相称简便,只需单击便可取得这些具体信息。您能够手动汇集一切这些信息,但这大概会消费良多工夫和精神。EM10g供应了随取随用的办理计划。

一样平常使用

让我们来看看怎样利用新的EM来完成一些较罕见的义务。

一项罕见的义务是变动表及其响应的索引。在数据库主页,如所示选择“Administration”选项卡,并援用标志为6的项目。在本页中,您能够办理数据库来设置回退段、创立表空间和形式工具、设置资本办理器、利用新的调剂程序(将在今后的文章中先容)和更多事项。在此处选择“Tables”,这将修改如所示的画面。



:表办理

注重白色圆圈中高亮显现的手电筒标记;这是用于修改数值列表的按钮。在图中所示画面中,您能够单击LOV标记,修改数据库中的用户列表,并从列表当选择一个用户。单击按钮“Go”,呈现该用户的表的一个列表。您还可使用“%”标记指定通配符—比方,经由过程利用%TRANS%,能够找着名称中带有单词TRANS的一切表。

让我们来看一个示例。选择表TRANS,变动个中的一列。单击超链接,修改如所示的“编纂表”画面。



:表办理

假如您要将列ACTUAL_RATE从NUMBER(10)改成NUMBER(11),则能够变动数字(援用1),然后单击“Apply”。要检察完成该义务的实践SQL语句,能够单击按钮“ShowSQL”。

在统一画面上还能够取得另外一条主要信息:增加趋向。您将在今后一篇有关段办理的文章中懂得到,察看一段工夫内的工具增加情形是大概的。该画面供应了不异的信息,但倒是以图形体例暗示的。要检察该画面,可单击选项卡“Segments”(援用2)。该操纵修改段画面,如所示。



:段画面

注重白色圆圈中标志的项目。该画面显现有几空间分派给段(2)、实践利用了几(1)和华侈了几(3)。在该画面的下部(4),您能够看到一幅有关工具所用空间和分派给工具的空间的图形。在本示例中,表的利用形式已不乱—因而是直线。

您能够对表实行其他办理操纵,办法是利用那些用于该目标的选项卡,如用于办理束缚的“Constraints”。

利用EM举行功能调治

到今朝为止您已懂得到,固然EM的表面已变动,但它供应了最少与之前的Java版本一样多的功效。可是,与后者分歧的是,EM如今还撑持更新的Oracle数据库功效。比方,EM如今可以处置子分区。

可是,有履历的DBA但愿这类工具能完成更多的事情—特别是在妨碍诊断或自动功能调治方面。让我们举个例子。回想前文中我们的数据库正在“Application”守候类上处于守候形态,如数据库主页所示(援用3),而我们必要诊断其缘故原由。在任何调剂过程当中必要懂得的关头事变之一是有几种组件(如CPU、磁盘和主机子体系)在互相感化,如许有助于在高低文情况中综合察看一切这些变量。为此,可在数据库主页当选择“Performance”选项卡。此操纵修改如所示的画面。



:“Performance”选项卡

请注重一切量度已在统一工夫轴上对齐,如许更简单察看它们的互相依附性。注重尖峰(3),它对应于调剂程序义务。它标明,在该时候约有七个会话正在守候与调剂程序相干的守候事务。那末,影响要素是甚么?注重处于统一地位(绿色地区)的CPU量度—它们显现了已经利用过的最年夜CPU利用率,在图形中以虚线(4)暗示。在该点前后,我们没有看到CPU尖峰呈现,这就供应了一条线索。注重CPU运转行列长度中的尖峰(1),这是调剂程序的间接成果,调剂程序大概发生了过量的内存需求,招致增添了分页举动(2)。如您所见,一切征象会合在一同,增进了对数据库负载“概略”的懂得。

注重在工夫轴开端的尖峰—增添了运转行列长度(5)和分页速度(6)—它们与物理读取的另外一个尖峰相干(7)。缘故原由是甚么?

经由过程对照图形“Sessions:WaitingandWorking”与尖峰产生的工夫,我们能够看到,年夜部分会话都在“Application”守候类长进行守候。可是我们必要切实地查明它在该时代内正在守候甚么?单击该工夫的地区,修改举动会话画面,如所示。



:举动会话守候

该画面显现会话正在守候的守候事务是enq:TX?rowlockcontention。那末招致此成绩的SQL语句是甚么?很复杂:画面自己显现了语句8rkquk6u9fmd0的SQLID(在白色圆圈中)。单击该SQLID,修改如所示的SQL画面。



:SQL具体信息

在该画面上,您能够看到关于它的SQL语句和相干的具体信息,包含实行企图。它标明,这条SQL招致行锁争用,因而使用程序计划多是成绩的本源。

栓锁争用

假定单击“Performance”选项卡呈现相似0所示的画面。



0:“Performance”选项卡,示例2

在图中,请注重白色矩形中高亮显现的量度。您能够看到在12:20AM摆布有良多与CPU相干的守候,这招致在CPU中呈现复杂的运转行列。我们必要诊断这一守候。

起首,单击显现CPU争用地区的图形(在图上标有“ClickHere”),以具体检察该特定守候,如1所示。



1:举动会话守候

注重在“ActiveSessionsWorking:CPUUsed”图形中带暗影的框(1)。您可使用鼠标拖动它来安排核心。此操纵招致以下的饼形图(2和3)只在该框所包括的时段内举行盘算。在这里我们看到,一个具有id8ggw94h7mvxd7的特定SQL正在十分坚苦地运转(2)。我们还看到,具有效户名ARUP和SID265的用户会话是最次要的运转会话(3)。单击该会话,检察其具体信息。此操纵修改“SessionDetails”画面。单击选项卡“WaitEvents”,修改该会话所履历的守候事务的具体信息,其画面相似于2所示。



2:守候事务的具体信息

在该画面中,请注重在白色圆圈中高亮显现的118厘秒的最长守候,它在守候库高速缓存。当您单击“Latch:LibraryCache”的超链接时,将会看到相似3所示的画面。



3:守候直方图

该画面供应了10g数据库之前所没有供应的一些共同信息。在诊断这个栓锁争用成绩时,怎样晓得这118厘秒的守候是由几个会话中的多个小守候构成,仍是只是由一个会话中的一个年夜守候构成,从而使数据呈现偏向呢?

在这里,直方图能够匡助我们。从图上看,您晓得约莫250次会话具有1毫秒的守候(在圆圈中高亮显现)。会话在4与8毫秒之间的某处守候了约莫180次。该画面显现,这些守候的工夫一般很短,因此它们不是栓锁争用的次要症状。

在数据库主页上,您能够经由过程单击标为“AdvisorCentral”的选项卡来会见ADDM、SQLAccessAdvisor和其他参谋程序。ADDM在搜集量度时主动运转,而且了局当即公布在AdvisorCentral页中;当单击该页时,将显现由ADDM给出的倡议。SQLTuningAdvisor也反省这些量度,并在此页上公布其倡议。(我们将在今后的文章中加倍具体地研讨ADDM和SQLTuningAdvisor。)

简化保护

数据库主页上标为“Maintenance”的选项卡是经常使用保护举动—如备份和恢复、数据导出或导进(数据泵)、数据库克隆和更多举动—的启动把持台。在该画面上,您还能够对战略考证警报所基于的最好理论的基础道理举行编纂。

结论

如先前所述,这篇文章所触及的只是伟大冰山的一角。在本文中,我的目标不是为了供应周全的概述;而是但愿供应对一些跨多个妙技集的特定举动的疾速扫瞄。

Oracle10gEM为DBA老手供应了充足的资本,以便很快地懂得Oracle数据库办理的奇妙的地方。一本有关利用EM的义务及手艺的好大纲是Oracle“两日速成DBA”参考手册。我激烈倡议您浏览它,特别是在您刚入手下手进修的时分。
mysql的原来开发者又开发了MariaDB,MariaDB适合用来替代mysql吗
若天明 该用户已被删除
沙发
发表于 2015-1-19 20:04:04 | 只看该作者
个人感觉没有case直观。而且默认的第三字段(还可能更多)作为groupby字段很容易造成新手的错误。
飘灵儿 该用户已被删除
板凳
发表于 2015-2-13 13:18:24 | 只看该作者
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?
冷月葬花魂 该用户已被删除
地板
发表于 2015-3-3 21:59:14 | 只看该作者
大家注意一点。如下面的例子:
飘飘悠悠 该用户已被删除
5#
发表于 2015-3-11 14:12:04 | 只看该作者
分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。
admin 该用户已被删除
6#
发表于 2015-3-18 22:49:55 | 只看该作者
入门没那么困难,精通没那么容易
莫相离 该用户已被删除
7#
发表于 2015-3-26 20:06:53 | 只看该作者
SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 19:12

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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