- 浏览: 144842 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (138)
- java基础 (26)
- 日常工作经验总结 (22)
- SVN学习与使用 (1)
- JBOSS学习与实践 (1)
- webService学习与实践 (4)
- redis学习与实践 (12)
- spring学习与实践 (0)
- hibernate学习与实践 (4)
- Struts2学习与实践 (0)
- mybatis学习与实践 (0)
- SpringMVC学习与实践 (0)
- jfreechart学习与使用 (0)
- javaScript学习与实践 (1)
- linux学习与实践 (4)
- Python学习与实践 (7)
- Oracle学习与实践 (21)
- Mysql学习与实践 (4)
- HTML5+CSS3学习与实践 (0)
- DIV+CSS学习与实践 (0)
- tomcat学习与实践 (1)
- mongodb学习与实践 (1)
- Git学习与实践 (2)
- hadhoop学习与实践 (0)
- shiro学习与实践 (0)
- CMS学习与实践 (0)
- Jmeter学习与实践 (0)
- java测试学习与实践 (2)
- bootstrap学习与实践 (0)
- jquery学习与实践 (0)
- Spring+hibernate+Struts2框架开发CRM项目 (0)
- JVM学习与实践 (0)
- 推荐学习网站 (1)
- 日常工作必备小技能 (4)
- Apache实践 (1)
- dubbo学习与实践 (2)
- Centos7 (6)
- 面试题目集合(收集各大网站) (4)
- 大数据学习 (1)
- 财富本 (2)
- 股票投资学习 (0)
- ZooKeeper (0)
- python切割集合里面相同的元素到一个集合里面 (1)
- 机器学习与深度学习 (1)
最新评论
-
魏叔武:
...
基于UDP协议的Socket编程
1;应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。
2;应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描, 如: select id from t where num=10 or num=20 可以这样查询: select id from t where num=10 union all select id from t where num=20
in 和 not in 也要慎用,否则会导致全表扫描,如: select id from t where num in(1,2,3) 对于连续的数值,能用 between 就不要用 in 了: select id from t where num between 1 and 3
3;下面的查询也将导致全表扫描: select id from t where name like ‘%abc%’
应尽可能的避免更新索引数据列,因为索引数据列的顺序就是表记录的物理存储顺序,一旦该列值改变将导致整个表记录的顺序的调整,会耗费相当大的资源。若应用系统需要频繁更新索引数据列,那么需要考虑是否应将该索引建为索引。
4;尽量使用数字型字段,若只含数值信息的字段尽量不要设计为字符型,这会降低查询和连接的性能,并会增加存储开销。这是因为引擎在处理查询和连接时会逐个比较字符串中每一个字符,而对于数字型而言只需要比较一次就够了。
5;尽可能的使用 varchar/nvarchar 代替 char/nchar ,因为首先变长字段存储空间小,可以节省存储空间,其次对于查询来说,在一个相对较小的字段内搜索效率显然要高些。
尽量使用表变量来代替临时表。如果表变量包含大量数据,请注意索引非常有限(只有主键索引)。
6;避免频繁创建和删除临时表,以减少系统表资源的消耗。
临时表并不是不可使用,适当地使用它们可以使某些例程更有效,例如,当需要重复引用大型表或常用表中的某个数据集时。但是,对于一次性事件,最好使用导出表。
7;在新建临时表时,如果一次性插入数据量很大,那么可以使用 select into 代替 create table,避免造成大量 log ,以提高速度;如果数据量不大,为了缓和系统表的资源,应先create table,然后insert。
8;如果使用到了临时表,在存储过程的最后务必将所有的临时表显式删除,先 truncate table ,然后 drop table ,这样可以避免系统表的较长时间锁定。
2;应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描, 如: select id from t where num=10 or num=20 可以这样查询: select id from t where num=10 union all select id from t where num=20
in 和 not in 也要慎用,否则会导致全表扫描,如: select id from t where num in(1,2,3) 对于连续的数值,能用 between 就不要用 in 了: select id from t where num between 1 and 3
3;下面的查询也将导致全表扫描: select id from t where name like ‘%abc%’
应尽可能的避免更新索引数据列,因为索引数据列的顺序就是表记录的物理存储顺序,一旦该列值改变将导致整个表记录的顺序的调整,会耗费相当大的资源。若应用系统需要频繁更新索引数据列,那么需要考虑是否应将该索引建为索引。
4;尽量使用数字型字段,若只含数值信息的字段尽量不要设计为字符型,这会降低查询和连接的性能,并会增加存储开销。这是因为引擎在处理查询和连接时会逐个比较字符串中每一个字符,而对于数字型而言只需要比较一次就够了。
5;尽可能的使用 varchar/nvarchar 代替 char/nchar ,因为首先变长字段存储空间小,可以节省存储空间,其次对于查询来说,在一个相对较小的字段内搜索效率显然要高些。
尽量使用表变量来代替临时表。如果表变量包含大量数据,请注意索引非常有限(只有主键索引)。
6;避免频繁创建和删除临时表,以减少系统表资源的消耗。
临时表并不是不可使用,适当地使用它们可以使某些例程更有效,例如,当需要重复引用大型表或常用表中的某个数据集时。但是,对于一次性事件,最好使用导出表。
7;在新建临时表时,如果一次性插入数据量很大,那么可以使用 select into 代替 create table,避免造成大量 log ,以提高速度;如果数据量不大,为了缓和系统表的资源,应先create table,然后insert。
8;如果使用到了临时表,在存储过程的最后务必将所有的临时表显式删除,先 truncate table ,然后 drop table ,这样可以避免系统表的较长时间锁定。
发表评论
-
Oracle中 关于数据库存储过程和存储函数的使用
2017-09-14 08:58 450存储过程和存储函数指存储在数据库中供所有用户程序调用的 ... -
Oracle存储过程和存储函数创建方法(详解)
2017-09-14 08:52 859select * from emp; ----------- ... -
oracle常用的几个例子
2017-09-14 08:51 431--修改表,添加列 alter table F_ ... -
ORACLE 日期加减操作
2017-08-18 09:55 438无论是DATE还是timestamp都可以进行加减操作 ... -
防止SQL注入的几种方式
2017-04-16 22:19 5781、什么是SQL注入 简而言之,就是客户端向服务端发送请求时 ... -
PLSQL破解-万能版
2017-03-15 15:54 660打开注册表 在run下输入regedit 删除 1.HK ... -
oracle数据库里面查询昨天的时间--sql语句查询--一个面试题目
2017-02-22 09:14 768查询昨天的时间以及今天的时间 -
oracle忘记dba用户密码--修改system和sys用户的密码:
2017-02-20 13:01 1059在数据库服务器上输入 sqlplus / as sysdb ... -
oracle常用sql语句大全
2017-02-18 22:17 494[b] 1.解锁用户 请输入用户名:sys 输入口令: ... -
根据某一个字段是否是null来查询结果集
2017-02-18 21:25 376根据某个字段为非空查询: 根据某个字段进行不是非空 ... -
oracle数据库中关键字distinct的使用
2017-02-18 20:49 528distinct的意思是唯一,是用来去除重复的查询的结果的一个 ... -
数据库事物的概念
2017-02-18 20:39 481事务(Transaction)是并发控制的单位,是用户定义的一 ... -
oracle数据库 || 的灵活使用
2017-02-16 22:15 460有时候工作需要,比如说在查询订单的时候,一般插入的是全部是数字 ... -
oracle数据库 dual空表的灵活使用
2017-02-16 21:25 590今天遇到一个一时比较冷的面试,说是当前数据库的系统时间,写一条 ... -
oracle的desc命令,用来查询表的结构
2017-02-16 20:58 1736第一步,通过cmd,环境登录用户账号 第二步:使用 desc ... -
利用命令行给oracle用户解锁 unlock
2017-02-16 20:40 1507第一步:通过运行登录数据库 sqlplus system/ ... -
truncate 、delete与drop区别
2017-02-16 12:27 489相同点: 1.truncate和 ... -
sql大量数据优化细节
2017-02-14 21:08 492备注:内容来自转载,感觉不错,自己拷贝了 1.对查询进行 ... -
oracle建立表空间并且给用户赋权限
2017-01-03 16:55 459--创建表空间并指定表空间的大小 CREATE TABLESP ... -
PLSQL登录时报 ORA12521 TNS无监听程序
2016-12-06 20:17 1215在用PL/SQL Developer等客户端工具连接oracl ...
相关推荐
当数据库性能下降时,"SQL数据库优化工具"就显得至关重要。这些工具能够帮助我们诊断问题、提高查询效率并优化整体数据库结构,确保系统运行顺畅。 一、SQL查询优化 SQL查询优化是数据库优化的关键部分,它涉及到...
### K3数据库优化方案知识点详解 #### 一、概述 K3系统在长期使用过程中可能会出现性能下降的问题,这往往与数据库的维护不足有关。为了提高系统的响应速度和整体性能,需要定期对K3数据库进行优化。本文档将详细...
SQL2000 数据库优化及安全建议 本文档提供了 SQL2000 数据库优化及安全建议,以帮助数据库管理员和开发者提高数据库性能和安全性。 数据库优化 数据库优化是数据库管理员和开发者需要关注的重要步骤。数据库优化...
### SQL Server 数据库优化之50种方法 在IT领域,特别是对于数据库管理与优化方面,SQL Server作为一款广泛使用的数据库管理系统,其性能优化一直是DBA(数据库管理员)和技术团队关注的重点。本文将根据给定的信息...
在SQL Server 2005中,数据库优化是提高系统性能和效率的关键环节。本文将介绍两种主要的数据库优化工具:SQL Server Profiler和数据库引擎优化顾问(Database Engine Tuning Advisor),以及它们如何帮助DBA们更好...
综上所述,Oracle数据库优化是一个涉及多方面因素的综合工程,需要从数据库设计、SQL优化、配置调整、维护策略等多个角度进行深入研究和实践,才能充分发挥Oracle的潜力,为企业带来更高的数据处理效率。通过不断的...
DB2数据库优化手册是数据库管理和优化的重要手册,本手册涵盖了数据库备份、恢复、磁盘阵列设备使用等多方面的内容,为数据库管理员和开发者提供了详细的指导和建议。 数据库备份和恢复策略 数据库备份和恢复是...
2. **性能调优工具**:如SQL Tuning Advisor、Automatic Workload Repository (AWR)报告,提供性能优化建议。 3. **故障恢复**:理解RMAN备份和恢复机制,熟悉闪回技术,应对数据丢失或误操作。 4. **资源管理**:...
在SQL数据库优化中,使用索引来优化存储过程是一个关键的策略,特别是在处理大量数据时。在这个特定案例中,原始的存储过程执行时间高达25秒,而在经过一系列的优化后,执行时间降低到3到4秒,显著提高了效率。 ...
最后,Oracle性能优化建议遵循两个基本原则:WHERE子句中连接顺序的安排,以及避免在SELECT子句中使用通配符‘*’。在编写SQL语句时,应尽量按照自下而上的顺序来编写WHERE子句中的连接条件,并将能够过滤掉最多记录...
- **统计信息更新**:定期更新统计信息,帮助数据库优化器做出更好的执行计划决策。 #### 三、锁管理优化 锁机制是数据库并发控制的重要手段之一,不合理的锁设置可能会导致性能瓶颈。 #### 3.1 锁列表配置 - **...
在进行数据库优化时,首先需要理解优化的主要目的是为了提升数据库的查询效率,减少资源的消耗,保证数据处理的性能。数据库优化方案可以从多个方面入手,包括但不限于结构优化、查询优化、索引优化以及SQL语句优化...
《SQLServer数据库优化详解》 SQLServer数据库优化是提升系统性能的关键步骤,尤其在处理大量数据和复杂查询时显得尤为重要。以下将详细阐述优化数据库的五十种方法,以解决查询速度慢的问题。 首先,了解查询速度...
### 数据库优化方法论 #### 一、引言:数据库优化的重要性 在当前信息化社会中,数据成为企业和组织的核心资产之一。随着业务规模的不断扩大和技术的快速发展,如何高效地管理和利用这些数据变得至关重要。数据库...
"Oracle 数据库优化大全" Oracle 数据库优化是数据库管理系统中非常重要的一方面。一个高效的数据库系统可以大大提高系统的性能和可靠性。本文总结了 30 多条 Oracle 数据库优化的经验,涵盖了选择最有效率的表名...
**监控与性能诊断**:使用Oracle的性能监控工具如AWR(Automatic Workload Repository)、ASH(Active Session History)和ADDM(Automatic Database Diagnostic Monitor),可以帮助识别性能问题,提供优化建议。...
- **数据库调优顾问(DBMS_ADVISOR)**:利用内置工具分析数据库性能,提供优化建议。 - **绑定变量**:使用绑定变量避免解析SQL语句的开销,提高执行效率。 - **实时监控与AWR报告**:通过Automatic Workload ...
2.2.2 优化建议:实施合适的规范化程度,平衡数据冗余与查询性能;创建复合索引以加速多条件查询;使用分区技术对大数据量表进行分割,提升查询效率;考虑使用物化视图预计算常用查询结果,减轻数据库实时计算压力。...
Oracle数据库性能优化是确保系统高效运行的关键环节,尤其是在大数据量和高并发的环境中。Oracle数据库因其先进、完整和集成的特性,在市场中占据主导地位,因此深入理解和掌握Oracle的优化技术至关重要。 首先,...