- 浏览: 587569 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (231)
- JAVA (64)
- Oracle (50)
- JAVA IDE (10)
- AJax (8)
- Spring (12)
- hibernate (10)
- Struts (9)
- Jquery (7)
- EXT js (9)
- Tomcat (2)
- MySql (13)
- SQLServer 2005 (3)
- java script (10)
- DB2 (6)
- Linux (15)
- solaris (3)
- 开发模式 (16)
- windows (15)
- 硬件 (2)
- PHP (3)
- 框架整合 (17)
- Weblogic (12)
- JBOSS (1)
- 协议 (7)
- 云计算 (6)
- JSF (1)
- richfaces (1)
- python (1)
最新评论
-
woshiicesky:
怎么使用的?
解决jdk1.7 不支持TLS1.2的问题 -
sunzbking:
哇!大佬谢谢分享解决问题啦
解决jdk1.7 不支持TLS1.2的问题 -
doren:
谢谢,很好解决我们的问题
解决jdk1.7 不支持TLS1.2的问题 -
贝塔ZQ:
PageOffice插件,挺好使得,可以试试
POI解析Excel 文件读取,修改,另存等功能 -
程俊2009:
需要用哪些jar,可以说下吗
jdom读写XMl文件
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.
(2) WHERE子句中的连接顺序.:
ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.
(3) SELECT子句中避免使用 ‘ * ‘:
ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间
(4) 减少访问数据库的次数:
ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等;
(5) 在SQL*Plus , SQL*Forms和Pro*C中重新设置ARRAYSIZE参数, 可以增加每次数据库访问的检索数据量 ,建议值为200
(6) 使用DECODE函数来减少处理时间:******************************
使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表.
decode (expression, search_1, result_1) decode (expression, search_1, result_1, search_2, result_2) decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n) decode (expression, search_1, result_1, default) decode (expression, search_1, result_1, search_2, result_2, default) decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n, default)
decode函数比较表达式和搜索字,如果匹配,返回结果;如果不匹配,返回default值;如果未定义default值,则返回空值。
以下是一个简单测试,用于说明Decode函数的用法:
SQL> create table t as select username,default_tablespace,lock_date from dba_users; Table created. SQL> select * from t; USERNAME DEFAULT_TABLESPACE LOCK_DATE ------------------------------ ------------------------------ --------- SYS SYSTEM SYSTEM SYSTEM OUTLN SYSTEM CSMIG SYSTEM SCOTT SYSTEM EYGLE USERS DBSNMP SYSTEM WMSYS SYSTEM 20-OCT-04 8 rows selected. SQL> select username,decode(lock_date,null,'unlocked','locked') status from t; USERNAME STATUS ------------------------------ -------- SYS unlocked SYSTEM unlocked OUTLN unlocked CSMIG unlocked SCOTT unlocked EYGLE unlocked DBSNMP unlocked WMSYS locked 8 rows selected. SQL> select username,decode(lock_date,null,'unlocked') status from t; USERNAME STATUS ------------------------------ -------- SYS unlocked SYSTEM unlocked OUTLN unlocked CSMIG unlocked SCOTT unlocked EYGLE unlocked DBSNMP unlocked WMSYS 8 rows selected.
(7) 整合简单,无关联的数据库访问:
如果你有几个简单的数据库查询语句,你可以把它们整合到一个查询中(即使它们之间没有关系)
(8) 删除重复记录:
最高效的删除重复记录方法 ( 因为使用了ROWID)例子:
DELETE FROM EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID) FROM EMP X WHERE X.EMP_NO = E.EMP_NO);
(9) 用TRUNCATE替代DELETE:
当删除表中的记录时,在通常情况下, 回滚段(rollback segments ) 用来存放可以被恢复的信息. 如果你没有COMMIT事务,ORACLE会将数据恢复到删除之前的状态(准确地说是恢复到执行删除命令之前的状况) 而当运用TRUNCATE时, 回滚段不再存放任何可被恢复的信息.当命令运行后,数据不能被恢复.因此很少的资源被调用,执行时间也会很短. (译者按: TRUNCATE只在删除全表适用,TRUNCATE是DDL不是DML)
(10) 尽量多使用COMMIT:
只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求也会因为COMMIT所释放的资源而减少:
COMMIT所释放的资源:
a. 回滚段上用于恢复数据的信息.
b. 被程序语句获得的锁
c. redo log buffer 中的空间
d. ORACLE为管理上述3种资源中的内部花费
发表评论
-
oracle vatchar2 转换成clob方法
2017-06-08 17:38 1273create table cssc_result1 as ... -
oracle 回滚某个表的数据到指定时间点
2017-05-04 16:45 1898alter table 表名 enable row move ... -
oracle 监控常用sql
2017-04-19 10:08 673select * from V$process; SE ... -
ORACLE查询表修改时间
2016-10-11 09:20 16511、select uat.table_name from u ... -
oracle恢复误删除drop掉的表
2016-09-25 09:28 1301--查看回收站中表 select object_nam ... -
Oracle 快速创建全局dblink
2016-09-08 10:26 984-- 如果创建全局 dblink,必须使用 systm 或 ... -
Oracle substr 截取nvarchar2 问题
2016-04-20 10:50 993-- 查询业务类型 -- 数据内容为:2, ... -
Oracle 11g ORA-12514 解决办法
2016-03-12 14:58 35601. 找到listener.ora监听文件,具体位置: ... -
Java性能调优工具
2016-02-23 15:39 7341、JDK命令行工具 1.1、jps命令 jps用于列出 ... -
oracle em 启动问题
2015-06-01 16:34 1051一、em 常用命令 emca -repos create ... -
ORACLE查询树型关系
2014-02-19 17:05 707oracle中的select语句可以用START WITH ... -
Oracle 修改用户密码180天限制的问题
2013-09-16 15:22 886Oracle11g中,为了让客户在半年时间内更改数据库用户密 ... -
oracle 导出sequences
2013-06-29 17:27 1096如下脚本,可以将某个用户的全部sequence查询出来,并拼 ... -
oracle11g更改字符集AL32UTF8为ZHS16GBK
2013-06-24 12:00 1683Database character set (AL32UT ... -
Java编码易疏忽的十个问题
2013-02-20 17:30 964在Java编码中,我们容易犯一些错误,也容易疏忽一些问题,因 ... -
常用的一些rman备份恢复命令
2013-02-20 13:17 1474Oracle的官方文档中有rman命令的比较完整的说明,我们 ... -
Oracle 查询所有表id大于10000的数据表名和数据
2013-01-29 13:41 2574-- 查询所有表id大于10000的数据以及对应表名称 ... -
weblogic 不解压war包的问题
2012-12-24 16:04 7675开发web应用时,如果通过weblogic的控制台部署war包 ... -
Oracle系统表查询
2012-12-20 14:03 1023oracle查询用户下的所有表 select ... -
Oracle Weblogic 10.X、11.X、12.X各个版本对应的系统、JDK、数据库版本
2012-12-19 09:47 10062压缩包中包含Oracle weblogic 10. ...
相关推荐
下面我们将从表设计优化、字段设计优化、索引优化、查询优化等方面对 SQL Server 2008 数据库性能优化进行系统的总结。 表设计优化 良好的表设计是数据库性能优化的基础。根据规范化的原则,表设计应当满足规范化...
综上所述,SqlServer数据库性能优化是一个涉及多方面的复杂过程。从应用程序设计到数据库设计,再到操作系统层面的优化,每一步都至关重要。通过综合运用各种技术和策略,可以有效地提高Sql Server的性能,确保企业...
根据提供的文档信息,本文将详细解析“数据库性能优化工具”的核心功能与操作流程,特别是针对ORACLE和SQL SERVER这两种常见的数据库管理系统(DBMS)的性能优化工具。 ### 一、工具概述 #### 1.1 开发目的 该工具...
本篇文章将从多个角度探讨如何进行数据库性能优化,并通过具体的策略和技术来帮助读者理解这一过程。 #### 一、数据库调优的重要性及基本原则 数据库调优旨在提高数据库系统的性能,使应用运行得更快更稳定。这...
### 最佳实践之一:数据库性能优化 #### 一、引言 随着信息技术的快速发展,数据库作为数据管理和存储的核心工具,在企业信息化建设中的地位日益凸显。然而,随着业务规模的不断扩大和用户数量的激增,数据库的性能...
本书《Oracle数据库性能优化》是由ITPUB四大技术版主盖国强、冯春培、叶梁和冯大辉联合编著的一部关于Oracle数据库性能优化的经典之作。全书共有30章,分为五个部分,涵盖了Oracle优化的各个方面,从内存优化、I/O...
### Oracle数据库性能优化知识点 #### 一、Oracle数据库性能优化概览 在《Oracle数据库性能与可扩展性:定量方法》这本书中,作者Henry H. Liu深入探讨了Oracle数据库的性能优化与可扩展性的关键技术和策略。...
### ORACLE数据库性能优化知识点详解 #### 一、概述 在现代信息技术领域中,数据库作为信息系统的核心组成部分,其性能的好坏直接影响着整个系统的运行效率。ORACLE作为一款广泛使用的数据库管理系统,其性能优化...
在IT行业中,数据库性能优化是DBA(数据库管理员)和数据工程师必须掌握的关键技能之一。Oracle9i作为一款功能强大的关系型数据库管理系统,在企业级应用中被广泛采用。对于Oracle9i数据库来说,其性能直接影响到...
在现代企业的信息化建设中,数据库作为信息系统的核心组件之一,其性能的好坏直接影响着整个系统的响应速度和用户体验。SQL Server作为一款广泛使用的数据库管理系统,其优化工作对于提高系统整体性能至关重要。本文...
首先,Bufferpool,即缓冲池,是数据库性能优化的核心之一。缓冲池是内存中用于存储和修改数据库页的地方,通过减少磁盘I/O次数来提高性能。配置合适的Bufferpool大小至关重要。DB2默认的缓冲池IBMDEFAULTBP在创建...
数据库SQL优化是提高数据库性能的关键步骤之一。以下是数据库SQL优化的大总结,涵盖了百万级数据库优化方案的多个方面。 一、避免全表扫描 在查询中,尽量避免全表扫描,首先应考虑在where及order by涉及的列上...
Oracle数据库性能优化是一项涉及多方面的工作,包括SQL逻辑、硬件配置、数据库参数、数据架构和应用程序等多个层次。通过对这些环节进行综合考虑和针对性优化,可以有效地提升Oracle数据库的性能,满足云计算环境下...
减少磁盘I/O操作是提升数据库性能的重要手段之一。可以通过使用高速缓存来存储频繁访问的数据,以及优化数据分布等方式来降低I/O负担。 #### 四、数据库磁盘I/O优化 - **使用高速缓存:** 高速缓存技术可以极大地...
总结以上内容,我们可以得知,Oracle数据库性能优化是一个涉及多方面考虑的综合过程。通过合理利用索引、表分区、优化器模式等技术,以及对SQL语句的精细调整,能够有效提高数据库性能,优化应用程序的用户体验。...
本篇将继续深入探讨Oracle数据库性能调优的诸多方面,重点关注于嵌套循环执行计划,这是数据库多表操作中常见的连接方式之一。 首先,了解单表执行计划是理解多表执行计划的基础,单表执行计划涉及到了对单个表进行...
Oracle数据库是全球广泛使用的大型关系型数据库系统之一,它在数据存储、处理和管理方面具有强大的功能。本主题主要探讨Oracle数据库的设计原则和优化策略,以提升系统的性能和效率。 一、数据库设计基础 1. 规范化...
数据库性能优化是提高应用程序响应时间和用户体验的关键因素之一。对于程序员而言,掌握一些基础的优化法则可以帮助他们在开发过程中有效地提升数据库访问效率。本文旨在从程序员的角度出发,探讨数据库访问性能优化...