当前位置:首页 > 日记 > 正文

SQL性能优化系列学习1

SQL性能优化系列学习1
您正在研究的Oracle过程是Oracle SQL性能优化系列。
1。选择合适的Oracle优化器

有3种优化Oracle:

规则(基于规则)B成本(成本)C。选择(选择性)

默认的优化器可以用来申报各类在init.ora文件optimizer_mode参数,如规则、成本、选择、all_rows,first_rows。还可以在sql子句级别或会话级别上覆盖它们。

为了使用基于成本的优化器(CBO,基于成本的优化器),必须定期运行分析命令,以提高数据库中对象统计的准确性。

如果数据库优化器模式被设置为有选择(选择),那么实际的优化器模式将与是否已经运行了分析命令有关。如果通过分析传递表,优化器模式将自动成为CBO,否则,数据库将使用规则表单优化器。

默认情况下,Oracle采用选择优化器。为了避免不必要的全表扫描,您必须避免使用选择优化器,并采用基于规则的或基于成本的优化器。

2。访问表

Oracle使用两个访问表记录的方式。

A.全表扫描

完整的表扫描是对表中每个记录的顺序访问。Oracle一次读取多个数据块(数据库块)来优化全表扫描。

B.通过ROWID访问表

你可以使用基于rowid访问模式提高访问表的效率,ROWID包含物理位置信息记录表中的Oracle索引(索引)来实现数据和存储数据的物理位置(rowid)。指标之间的关系通常提供了一个快速的方法来访问的rowid,所以索引查询可以基于性能的改善。

三.共享SQL语句

为了避免重复解析SQL语句,这是Oracle分析中第一次将SQL语句存储在内存中。它位于系统全局区域,内存中共享池(共享缓冲池)的SGA(系统全局区域)可以由数据库的所有用户共享。因此,在执行SQL语句(有时称为游标)时,如果在执行相同语句之前,Oracle可以快速获得已解析的语句和最佳执行路径。Oracle的功能极大地提高了SQL性能,节省了内存使用量。

不幸的是,Oracle仅为简单表提供缓存缓冲,而这并不适用于多表连接查询。

数据库管理员必须在init.ora中的区域的相应参数。当内存区域较大时,可以保留更多语句,共享的可能性更大。

当您向Oracle提交SQL语句时,Oracle将首先在这个内存中查找同一语句。

这里需要注意的是,Oracle对于两者都是严格匹配的,为了实现共享,SQL语句必须完全相同(包括空格、银行等)。

共享语句必须满足三个条件:

字符级比较:

当前执行的语句和共享池中的语句必须完全相同。

例如:

从EMP中选择*;

它与下面的每一个不同

从EMP中选择*;

从EMP中选择*;

从EMP中选择*;

两个语句中的对象必须完全相同:

例如:

用户对象名称是如何访问的

杰克sal_limit私有同义词

work_city公共同义词

plant_detail公共同义词

吉尔sal_limit私有同义词

work_city公共同义词

plant_detail表的所有者

考虑以下两个SQL语句是否可以在两个用户之间共享。

SQL是否可以共享以及为什么

选择最大(sal_cap)从sal_limit;

不,不,每个用户都有一个私人的同义词sal_limit,这是一个不同的对象

select count(* 0 work_city哪里sdesc like'new %;

可以。两个用户访问同一对象的公共同义词work_city

Select a.sdesc, b.location from work_city a, plant_detail b where a.city_id = b.city_id

不,no. User Jack访问plant_detail通过私有同义词,和姬尔是表的所有者,和对象是不同的。

C.两个SQL语句必须使用同一个名称绑定变量(绑定变量)

例如:

第一组的两个SQL语句是相同的(可以共享)和两个语句,第二组是不同的(即使在运行时,具有相同变量绑定的不同值)

{分页}
A.

选择引脚,从人民那里销=名称:blk1.pin;
选择引脚,从人民那里销=名称:blk1.pin;

B.

选择引脚,从人民那里销=名称:blk1.ot_ind;
选择引脚,从人民那里销=名称:blk1.ov_ind;

上一页

相关文章

如何在Win8系统并进入桌面(溶液)

如何在Win8系统并进入桌面(溶液)

桌面,系统,溶液,如何在,电脑软件,很多朋友都是用的XP或win7系统。当他们打开电脑,进入桌面,和软件是非常方便的。新的电脑内置在Win8系统而不是被用来寻找一个传统的桌面像XP、Win7。 其实,很简单,在Win8 UI界面的左下角,有一个桌面的快捷方式图…

两个表副本的简单介绍,用于选择和插

两个表副本的简单介绍,用于选择和插

选择,副本,用于,两个,简单,插入在T-SQL的共同声明,并插入表格(field1,field2,…)值(value1,value2,…)在应用程序的开发是必不可少的。但我们在开发和测试过程中,经常会遇到需要复制表,如复制将一个表字段数据的表的一部分,或表复制到表,然后我们会使用…

PHP计划任务和定时任务的实现代码

PHP计划任务和定时任务的实现代码

计划任务,定时任务,代码,电脑软件,PHP,不知道节目的表现会有多大影响! 复制代码代码如下所示: (ignore_user_abort); / /关闭浏览器,PHP脚本也可以继续。 set_time_limit(0); / / set_time_limit(0)进行无限制可以使程序 $间隔= 60×30;每半小时运行一…

Linux根目录中的主目录函数描述

Linux根目录中的主目录函数描述

函数,根目录,主目录,描述,电脑软件,查看:存储最常用的命令; 启动:启动Linux的核心文件; :设备文件; :存储各种配置文件; :用户主目录; :系统最基本的动态链接共享库; / mnt:一般是空的,它是用来临时挂载其他的文件系统。 :虚拟目录,内存映射; bin:存储最常用…

PHP数组数组和使用实例的简单教程(

PHP数组数组和使用实例的简单教程(

数组,教程,很容易,实例,简单,注意注释部分的介绍。 复制代码代码如下: 实例化数组 数组=(); 数组由以下两部分组成 数组({键} + {值}) 索引键一般为 对于int类型或int类型,可以检查字符串PHP手册}是什么。 所以写 / / $array =阵列(0 = 1 = > > A、…

win7桌面背景不能设置通过组策略来

win7桌面背景不能设置通过组策略来

设置,解决这个问题,组策略,桌面背景,电脑软件,点评:桌面的背景是无法设置的,当情况发生时,面对这个问题,我们应该如何解决呢以下是使用组策略编辑器解决这个问题的以下介绍 打开系统的开始菜单,然后在弹出菜单中单击并运行,打开运行程序。 在运…

aoltpspd.exe的过程是怎样的是aolt

aoltpspd.exe的过程是怎样的是aolt

的是,是怎样,过程,电脑软件,aoltpspd,点评:aoltpspd.exe的美国在线accelerator.aol极速部分用来加速你的网络连接速度。 进程文件:aoltpspd或aoltpspd.exe 进程名称:美国在线极速 过程类别:安全风险的过程 英文描述: aoltpspd.exe是美国在线极…

PHP过程中的一些注意事项的摘要

PHP过程中的一些注意事项的摘要

过程中,注意事项,摘要,电脑软件,PHP,1.php通过Javascript PHP传递给Javascript的方式:您需要调用标签外的引号 document.getelementbyid(盈利+ A + B).innerHTML = ; 注意:事实上,我原来知道有一个错误,PHP是一个动态显示语言,事实上,在显示相关文本的回声中,引号…

vaserv.exe的过程是怎样的

vaserv.exe的过程是怎样的

的是,过程,是怎样,电脑软件,vaserv,评论:vaserv.exe过程的详细解释 进程文件:Vaserv或vaserv.exe 进程名称:VAIO动作设置 过程类别:安全风险的过程 英文描述: vaserv.exe是一个过程,从索尼,用于自动启动选定的 中文参考: vaserv.exe是连接相关软…

基于Linux的一些最常用的用户名和

基于Linux的一些最常用的用户名和

密码,用户名,最常用,电脑软件,Linux,评论:最近,龙研究小组发布了一个Linux SSH密码验证报告,并统计了一些最常用的Linux用户名称和密码。 下面的图从DRG SSH用户名和密码验证标记云中截取,以查看是否有常用密码。 如果您对ssh不满意,可以使用以…

在一些基本的语法和功能PHPLIB

在一些基本的语法和功能PHPLIB

语法,功能,电脑软件,PHPLIB,语法导论: 在phplib的常用的方法包括set_file,set_block,set_var,解析,ppasre,P,得到等。 声明:由于本系统是使用phplib,如果有页面中的一对大括号,它将取代空白,所以在写作的时候,我们用括号时,你使用它,在这里它是文章写作的…

差异与美元之间_request连接,_post

差异与美元之间_request连接,_post

美元,元和,连接,差异,电脑软件,1。_request美元 在PHP中,_request美元可以通过POST方法提交数据的获得方法,但速度慢 2。_get美元 它通过get方法获取浏览器提交的数据,get方法是通过将参数数据添加到提交到表单的action属性中引用的URL中,该…