摘要:数据库系统的性能最终决定数据库的可用性。因此而言数据库的性能是数据库的发展的生命力。在我们对于数据库的使用过程中,数据库在运行一段时间后都会存在一定的性能问题,该文主要针对数据库性能的五个方面进行分析和说明,分别是整体吞吐量问题、用户响应时间问题、内存比例问题、磁盘的输入输出问题、数据库的命中率问题,最后针对数据的优化策略进行分析,同时为我们数据库性能调整与优化提供相应的理论支撑。 关键词:ORACLE数据库;性能;调整与优化 中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2014)20-4629-02 ORACLE Database Performance Tuning and Optimization LIU En-jun (Network Information Center,Qiqihaer University, Qiqihaer 161006,China) Abstract: The final decision on the performance of database systems database availability. Therefore, in terms of performance of the database is a database development vitality. In the course of our database, the database will be some performance problems after running for some time, the paper mainly for the five aspects of database performance analysis and explanation, namely, the overall throughput issues, user response time issues, memory proportion problem, the problem of disk input and output, the hit rate of the database, the final analysis of data optimization strategy, while providing appropriate theoretical support for our database performance tuning and optimization. Key words: ORACLE database; performance; adjustment and optimization 对于我们现阶段不断发展的数据库而言,Oracle数据库的地位已经完全超越了同等数据库在数据库行业的发展。对于我们用户而言随着现阶段数据库用户的数量以极快的速度发展增加,对于数据库而言其相应的负载和相应的规模都是呈现相同比例增加,Oracle数据库作为现阶段性能较好的主流数据库之一,在一定程度上可以称之为应用最广泛的数据库,现在已经发展到Oracle 12C,相较于之前的Oracle 11G版本而言,Oracle 12c在很大程度上得到了提升,首先是PL/SQL性能增强,相应的改善了一些过去的Defaults等,数据库在实际应用过程中性能调整与优化问题,该文主要针对ORACLE数据库性能调整与优化进行相应的研究和分析。 1 Oracle数据库性能调整与架构 1.1 Oracle数据库性能的评价指标 对于我们所有的数据库的性能问题无外乎以下几种,首先系统的整体吞吐量问题,这个问题面向所有的数据库都是行之有效的;其次,用户响应时间,这是数据库性能问题的硬性指标;第三,数据库性能的内存比例,对于这一点主要指的是在我们数据库使用过程中内存的使用率和使用的基本情况进行分析和说明;第四,当我们谈及数据库的所占用的内存是我们不得不谈论我们数据库 磁盘的输入输出,这个过程是我们数据库性能的一项重要的指标;最后,我们主要探讨数据库的命中率问题,所谓数据库的命中率主要是指,在对我们的数据库进行使用的过程中,用户所提出的要求能不能再单位时间内进行相应的满足。Oracle数据库性能的评价标准无外乎这5点,因此而言,我们对于数据库整体性能的架构优化主要从以上五个方面进行入手和分析。 数据库相应时间的分解主要有以下几个部分构成:例如图1我们可以进行明确的分析和说明。 通过这个例子我们可以看出每部分对其影响的比重,待会儿研究数据库性能调整与架构的变化对其影响。 1.2 Oracle数据库性能调整与架构 我们从以上五个方面进行分析和说明: 首先系统的整体吞吐量问题:对于这个问题我们的解决方案主要针对我们的数据库整体。因此而言,我们对于数据库整体吞吐量的优化过程中,对于一个好的数据库,我们必须要有相当优秀的数据库设计方案与之相匹配,只有这样才能将我们的数据库纳入优秀的数据库行列。对于我们的Oracle 11G本身,其自身配备有相当多的性能优化的策略和相关的优化条件,但是这些优化策略并不能改善我们对于数据库结构的问题,因此而言只有我们对于结构进行有效地设计,才能为我们后期谈论数据库的优化打下基础,因此而言在谈论整体数据库吞吐量的问题时我们必须对于数据库的整体架构进行有效的设计,这个设计不单单拘泥于我们数据库的物理设计而且要针对数据库进行相应的逻辑结构进行设计,只有这样才能达到理想有效的数据库。
用户响应时间:我们刚刚就数据库整体架构的有效设计进行了探讨,探讨的结果就是不单单拘泥于我们数据库的物理设计而且要针对数据库进行相应的逻辑结构进行设计。但是我们对于数据库的操作过程中,不仅仅是对数据库的操作,而且对我们的程序进行相应的运行和部署。若想我们减少响应时间不仅仅要对数据库的结构进行行之有效的设计,而且要针对程序的结构进行相应的设计,只有这样才能是数据库的整体性能得到最大化得提升。对于我们的程序而言,我们应该合理的分清楚什么时候运用什么体系架构,例如,我们在对小型的群体进行相应的数据库程序结构设计时,我们就常常的采用C/S架构,这种架构的优点在于其相对于适用于群体较小、而且相对用户不太多、其运行的网络基本状况比较安全的情况。当我们对于多用户的程序架构设计时我们常常采用B/S的基本架构,这就是简单的举例说明并不代表所有的实际情况。同城我们的对数据库、程序优化的同时需要对于我们的网络环境进行适当的优化,这种优化同城针对网络环境、电脑(主机)的硬件设施、操作系统等,一旦这些能够进行最大化的优化能够提供数据库的整体性能的百分之二十左右,因此而言,我们在对数据库进行优化的同时不能忘记对于网络环境、电脑(主机)的硬件设施、操作系统的优化。 |