ORACLE优化系列文章三 ──优化Oracle数据库性能

Oracle数据库运维方案及优化 Oracle数据库优化 运维优化 文章目录Oracle数据库优化前言:Oracle数据库性能优化一 为啥要运维,运维哪些内容?二 检查数据库基本状况2.1 检查Oracle实例状态2.2 检查Oracle服务进程2.3 检查Oracle监听状态三 检查系统和oracle日志文件四 检查Oracle对象状态 前言: 在上一篇文章中我们讲了关于Oracle数据库的性能方面的优化,这篇文章咱们讲讲关于运维方面的优化吧。 上一篇文章的地址: Oracle数据库性能优化 一 为啥要运维,运维哪些内容? 数据库的运维主 阅读详情

  ---- 随着网络应用和电子商务的不断发展,各个站点的访问量越来越大,如何使有限的计算机系统资源为更多的用户服务?如何保证用户的响应速度和服务质量?这些问题都属于服务器性能优化的范畴。作为较成功的数据库厂商,Oracle公司数据库的性能优化是如何进行的呢?
  
  优化策略
  ----为了保证Oracle数据库运行在最佳的性能状态下,在信息系统开发之前就应该考虑数据库的优化策略。优化策略一般包括服务器操作系统参数调整、数据库参数调整、网络性能调整、应用程序SQL语句分析及设计等几个方面,其中应用程序的分析与设计是在信息系统开发之前完成的。
  ----分析评价Oracle数据库性能主要有数据库吞吐量、数据库用户响应时间两项指标。数据库用户响应时间又可以分为系统服务时间和用户等待时间两项,即:
  
  ----数据库用户响应时间=系统服务时间+用户等待时间
  
  ----因此,获得满意的用户响应时间有两个途径:一是减少系统服务时间,即提高数据库的吞吐量;二是减少用户等待时间,即减少用户访问同一数据库资源的冲突率。
  
  ----数据库性能优化包括如下几个部分:
  
  ----1. 调整数据结构的设计 这一部分在开发信息系统之前完成,程序员需要考虑是否使用Oracle数据库的分区功能,对于经常访问的数据库表是否需要建立索引等。
  
  ----2. 调整应用程序结构设计 这一部分也是在开发信息系统之前完成的。程序员在这一步需要考虑应用程序使用什么样的体系结构,是使用传统的Client/Server两层体系结构,还是使用Browser/Web/Database的三层体系结构。不同的应用程序体系结构要求的数据库资源是不同的。
  
  ----3. 调整数据库SQL语句 应用程序的执行最终将归结为数据库中的SQL语句执行,因此SQL语句的执行效率最终决定了Oracle数据库的性能。 Oracle公司推荐使用Oracle语句优化器(Oracle Optimizer)和行锁管理器(Row-Level Manager)来调整优化SQL语句。
  
  ----4. 调整服务器内存分配 内存分配是在信息系统运行过程中优化配置的。数据库管理员根据数据库的运行状况不仅可以调整数据库系统全局区(SGA区)的数据缓冲区、日志缓冲区和共享池的大小,而且还可以调整程序全局区(PGA区)的大小。
  
  ----5. 调整硬盘I/O 这一步是在信息系统开发之前完成的。数据库管理员可以将组成同一个表空间的数据文件放在不同的硬盘上,做到硬盘之间I/O 负载均衡。
  
  ----6. 调整操作系统参数 例如:运行在Unix操作系统上的 Oracle数据库,可以调整Unix数据缓冲区的大小、每个进程所能使用的内存大小等参数。
  
  ----实际上,上述数据库优化措施之间是相互联系的。Oracle 数据库性能恶化的表现基本上都是用户响应时间比较长,需要用户长时间的等待。而性能恶化的原因却是多种多样的,有时是多个因素共同造成了性能恶化的结果,这就需要数据库管理员有比较全面的计算机知识,能够敏感地察觉到影响数据库性能的主要原因所在。另外,良好的数据库管理工具对于优化数据库性能也是很重要的。
  
  性能优化工具
  ---- Oracle数据库常用的数据库性能优化工具有:
  ----1. Oracle数据库在线数据字典 Oracle在线数据字典能够反映出Oracle的动态运行情况,对于调整数据库性能是很有帮助的。
  
  ----2. 操作系统工具 例如使用Unix操作系统的Vmstat、 Iostat等命令可以查看到系统级内存和硬盘I/O的使用情况,这些工具能够帮助管理员弄清楚系统瓶颈出现在什么地方。
  
  ----3. SQL语言跟踪工具(SQL Trace Facility)
  
  ----SQL语言跟踪工具可以记录SQL语句的执行情况,管理员可以使用虚拟表来调整实例,并使用SQL语句跟踪文件调整应用程序性能。SQL语言跟踪工具将结果输出成一个操作系统的文件,管理员可以使用TKPROF工具查看这些文件。
  
  ---- 4. Oracle Enterprise Manager(OEM) 这是一个图形的用户管理界面,用户可以使用它方便地进行数据库管理而不必记住复杂的Oracle数据库管理的命令。
  
  ----5. Explain Plan——SQL语言优化命令 使用这个命令可以帮助程序员写出高效的SQL语言。
  
  系统性能评估
  ----信息系统的类型不同,需要关注的数据库参数也是不同的。数据库管理员需要根据自己的信息系统类型来着重考虑不同的数据库参数。
  ----1. 在线事务处理信息系统(OLTP) 这种类型的信息系统一般需要有大量的Insert、Update操作,典型的系统包括民航机票发售系统、银行储蓄系统等。OLTP系统需要保证数据库的并发性、可靠性和最终用户的速度,这类系统使用的Oracle数据库需主要考虑以下参数:
  
  数据库回滚段是否足够?
  是否需要建立Oracle数据库索引、聚集、散列?
  系统全局区(SGA)大小是否足够?
  SQL语句是否高效?
  ----2. 数据仓库系统(Data Warehousing) 这种信息系统的主要任务是从Oracle的海量数据中进行查询,以得到数据之间的某些规律。数据库管理员需要为这种类型的Oracle数据库着重考虑下述参数:
  
  是否采用B*索引或者Bitmap索引?
  是否采用并行SQL查询以提高查询效率?
  是否采用PL/SQL函数编写存储过程?
  有必要的话,需要建立并行数据库以提高数据库的查询效率。
  参数的调整
  ----1. CPU参数
  ---- CPU是服务器的一项重要资源,服务器良好的工作状态表现为在工作高峰时CPU的使用率高于90%。如果空闲时间CPU使用率就在90%以上,说明服务器缺乏CPU资源;如果工作高峰时CPU使用率仍然很低,则说明服务器CPU 资源还比较充足。
  
  ----使用操作命令可以看到CPU的使用情况,一般Unix操作系统的服务器,可以使用sar-u命令查看CPU的使用率;NT操作系统的服务器,可以使用NT的性能管理器来查看CPU的使用率。
  
  ----数据库管理员可以通过查看v$sysstat数据字典中的 “CPU used by this session”统计项得知Oracle数据库使用的CPU时间;查看“OS User level CPU time”统计项得知操作系统用户状态下的CPU时间;查看“OS System call CPU time” 统计项得知操作系统系统状态下的CPU时间,操作系统总的CPU时间就是用户状态和系统状态时间之和。如果Oracle数据库使用的CPU时间占操作系统总CPU时间的90%以上,就说明服务器CPU基本上被Oracle数据库使用着,这是合理的,反之,则说明服务器CPU被其他程序占用过多,Oracle数据库无法得到更多的CPU时间。
  
  ---- 2. 内存参数
  
  ----内存参数的调整主要是指Oracle数据库的系统全局区(SGA)的调整。SGA主要由3部分构成:共享池、数据缓冲区、日志缓冲区。
  
  ----共享池由两部分构成:共享SQL区和数据字典缓冲区。共享SQL区是存放用户SQL命令的区域,数据字典缓冲区则存放数据库运行的动态信息。
  
  结束语
  ----Oracle数据库的性能优化调整是一个系统工程,涉及的方面很多。数据库管理员需要综合运用上面介绍的规律,认真分析Oracle在运行过程当中出现的各种问题,以保证Oracle数据库运行的高效率。还需要指出的是,上面给出的语句只是测得Oracle运行过程的某一个时间点的情况,数据库管理员不能仅仅根据一个点的情况就断定数据库运行性能的好坏,只有多运行一些时间点才能对数据库运行状况做出一个综合评估。
  ----由于单个时间点的监测是很麻烦的,且对于多个时间点的监测更是一项烦琐的工作,为此,笔者开发了Oracle数据库性能监测软件ORATUNE。这个软件不仅能够定时从数据库中读取各种参数并自动计算出各种比例,而且还能自动根据这些比例的好坏建议数据库管理员修改某项参数。

ORACLE数据库性能优化之--内存磁盘 ORACLE数据库性能优化之–内存磁盘一、内存结构优化概述(一)缓冲区影响数据库运行性能的缓冲区包括可以共享的SGA和服务器进程私有的pga两大类,其中sga又包括共享池、大型池、java池、数据缓冲区、流池、redo log缓冲区。(二)自动内存管理oracle一般采用自动内存管理来管理系统内存,由oracle自动管理和调整数据库实例的内存大小。 阅读详情

相关推荐

提升数据库性能的关键指南-Oracle AWR报告

解读AWR报告的关键部分

m0_49929446的博客 4435

Oracle数据库性能优化

Oracle数据库性能优化 文章目录Oracle数据库性能优化一.数据库性能优化二.检查Oracle数据库性能2.1 检查数据库的等待事件2.2 Disk Read最高的SQL语句的获取2.3 查找前十条性能差的sql2.4 等待时间最多的 5 个系统等待事件的获取2.5 检查运行很久的SQL2.6 检查消耗CPU最高的进程2.7 检查碎片程度高的表2.8 检查表空间的 I/O 比例2.9 检查文件系统的 I/O 比例2.10 检查死锁及处理2.11 检查数据库cpu、I/O、内存性能2.12 查看是否有

yang_z_1的博客 6761

Oracle 性能瓶颈知多少:DB Time助你来查找,揭秘数据库DB Time与CPU使用率的关系!

SELECTFROMWHERE),SELECTFROMWHEREGROUP BYsn.snap_idSELECTFROMWHEREORDER BY这段SQL旨在帮助DBA深入分析Oracle数据库在最近一周内的DB Time和CPU使用情况。通过结合AWR系统的快照数据,DBA可以直观地看到每个快照期间的DB Time、活动会话数(AAS)和CPU使用率。这些指标有助于了解数据库性能瓶颈,评估服务器是否面临资源饱和的风险。该SQL的核心功能:DB Time的变化。

老苏畅谈运维 1569

oracle数据库优化-IO性能分析优化

在部署了ORACLE数据库的服务器上,我们大家或多或少的遇到过下列情况: 1. 业务系统运行缓慢,作为系统管理员需要检查包括IO在内的系统资源,这时系统管理员、存储管理员可能得到DBA(数据库管理员)的反馈说,IO的响应时间很慢,达到了30毫秒以上,要求解决。但存储管理员检查又不存在热点盘的情况,系统的IO量就是很大,除了使用更多的RAID组来重新分布数据、更换为更高端的存储外,似乎没有太好的办法...

oradbm的博客 5616

Oracle DB Time深度解析:从性能模型到实战调优

数据库性能调优的核心在于理解系统时间消耗的分布与根源。在Oracle数据库中,Time Model(时间模型)是构建性能分析框架的基石,它通过统计和分类数据库操作所花费的时间,为性能诊断提供量化依据。其核心价值在于将抽象的性能问题转化为可测量的时间维度,帮助DBA和开发者精准定位瓶颈。DB Time作为Time Model中的关键聚合指标,代表了所有前台会话在数据库调用上的总耗时,是衡量数据库真实负载与效率的核心标尺。通过分析DB Time的构成(CPU时间与等待时间),并结合AWR/ASH报告、动态性能视

congli3478的博客 423

TSMaster如何用珠海创芯CAN卡实现高效CAN通信(附完整驱动安装指南)

本文详细介绍了如何使用TSMaster软件与珠海创芯CAN卡实现高效CAN通信,包括驱动安装、系统配置、ControlCAN.dll替换及TSMaster集成配置等关键步骤。通过实战指南和故障排除技巧,帮助工程师快速搭建稳定可靠的CAN通信测试环境,适用于汽车电子和工业控制等领域。

weixin_29201859的博客 481

优化Oracle数据库性能:合理设置数据库参数

Oracle 数据库是一种功能强大的关系型数据库管理系统,但在处理大量数据和复杂查询时,性能问题可能会成为一个挑战。为了提高数据库的响应速度和效率,我们可以采取一系列的优化措施。 合理设置数据库参数是提高 Oracle 数据库性能的重要策略之一。通过调整内存管理参数、并发处理参数和日志恢复参数,可以最大程度地利用数据库资源,提高查询性能、并发性能和可靠性。在设置数据库参数时,需要考虑数据库的大小、负载情况和业务需求。因此,建议在优化数据库性能之前,进行充分的测试和评估,以确定最佳的参数设置策略。

小蓝枣的博客 5683

【深度学习】肺结节分割项目实战二:分割肺实质

在后续训练模型的时候如果直接使用原始的肺部CT图像,其中的非肺区域会对训练造成干扰,因此我们需要提取分割肺实质。这一部分参考了kaggle上的教程。 从这张CT图像中可以看出扫描器以外的部分为黑色,背景和肺内部颜色较深,非肺组织和骨头颜色较浅。我们的目的是将肺部分割出来。由于肺部区域和其他部分对比明显,我们可以设置一个合适的阈值对图像中的区域进行隔离。 import argparse import os import numpy as np from medpy.filter.smoothing imp

weixin_42182906的博客 7240

Oracle DB 性能管理

• 使用Oracle Enterprise Manager 监视性能 • 使用自动内存管理(AMM) • 使用内存指导调整内存缓冲区的大小 • 查看与性能相关的动态视图 • 排除无效和不可用对象产生的故障   性能监视 要管理Oracle Database 11g并保持其正常运行,数据库管理员(DBA) 必须通过定期监视性能来查找瓶颈所在,然后更正问题。 DBA 可以

一抹曦阳-Oracle 7051

【网络】PFC背景和原理 、文档(DCB=PFC + ETS,DCBX=DCB扩展)

目录 零、背景 一、PFC 1.概述 2.报文格式 3.工作机制 二、ETS 产生原因 基本原理 优先级组的调度 优先级的调度 三、DCBX 产生原因 基本原理 DCBX TLV介绍 五、PFC 拥塞研究(文档收集) 六、DC-QCN算法 (网络工程师必会) 7.1 α更新 7.2 降速 7.3 提速 8.总结 ...

小鱼菜鸟的博客 2165

那些年对支付宝的研究[整理]

支付宝功能强大.他内部各个功能间的跳转是通过Uri 实现的.而使用window.location.href 即可.跟浏览器一样的协议.很方便 H5启动支付宝: alipays://platformapi/startapp?appId=20000067&url=网址 alipays://platformapi/startapp?appId=20000691&url=网址 ali...

技术专研 8915

【Oracle】数据仓库

数据仓库就像是企业的"数据金库",把散落在各个系统中的数据统一收集起来,经过清洗、整理后,为决策分析提供统一的数据视图。Oracle数据仓库不仅仅是存储数据,更是一个完整的分析平台。

Guiat的博客 1673

ATE测试的未来:自动化与智能化的技术演进

本文探讨了自动测试设备(ATE)在半导体产业中的技术演进,重点关注自动化与智能化的发展趋势。随着芯片制程的不断进步,ATE面临测试复杂度激增和成本压力等挑战。文章分析了AI技术在测试优化中的应用,如自适应测试和缺陷预测,以及模块化架构和端到端测试生态系统的创新。这些技术突破显著提升了测试效率和设备利用率,为半导体测试的未来发展指明了方向。

weixin_29232507的博客 614

oracle 数据仓库

一.Data warehouse和OLTP系统的对比和OLTP系统不同,数据仓库的主要目的是集中统一的存放业务的历史数据,以便用于查询和分析。数据仓库理论的鼻祖William Inmon给数据仓库的特性归纳为一下四点:面向主题(Subject Oriented) 集成(Inegrated) 不可修改(Nonvolatile) 时间相关(Time Variant)

thinker28754的专栏 8052

华为HCIP大数据备考实战:从题库精析到834分通关策略

本文详细介绍了华为HCIP大数据认证考试的备考策略,包括题库精析、重点章节突破和考场实战经验。作者以834分的高分通过考试,分享了官方教材的三遍阅读法、自建题库技巧以及各章节核心知识点,帮助考生高效备考并顺利通关。

weixin_29169899的博客 149

P+F--r2000激光雷达slam技术实现

P+F--r2000激光雷达slam技术实现

majingming123的博客 1667

ORACLE优化系列文章一 ──Oracle中优化SQL的原则

1. 已经检验的语句和已在共享池中的语句之间要完全一样2. 变量名称尽量一致3. 合理使用外联接4. 少用多层嵌套5. 多用并发 语句的优化步骤一般有:1. 调整sga区,使得sga区的是用最优。2. sql语句本身的优化,工具有explain,sql trace等3. 数据库结构调整4. 项目结构调整写语句的经验:1. 对于大表的查询使用索引2. 少用in,exist等3.使用集合运算1.对于大

1767

YOLO11改进策略【独家融合改进】| RCSOSA + SPD + WFU

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。WFU模块通过小波变换的频率分解与跨尺度融合机制,解决了传统上采样过程中的混叠和细节丢失问题,实现了高效、高保真的面部细节重建。

Limiiiing的博客 449

db oracle 一抹曦阳 函数_值得收藏的Oracle数据库性能优化

前言 年尾了,新的一波面试军又要开始了,被问到最多的可能就是性能优化,尤其是数据库性能优化,这个面试题不管是初中高级工程师都会被问到。因此我觉得下面31点ORACLE优化还是值得调几个去面试。也方便以后平时开发时数据库性能优化时当字典来查。这是一篇ORACLE的优化,Mysql的优化请关注我,在之前的文章中有介绍。 Oracle数据库的排名依然稳健第一。以下将列出31条Oracle的优化习惯1、...

weixin_35804761的博客 129

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Oracle的数据仓库方案

给某一运营商的增值业务系统做过一个数据仓库子系统,基于oracle9i,当时的一些记录,以备将来查验!Oracle的数据仓库方案构件如下:1、Oracle 9i中的insert all, merge等超强的语句2、Cube的支持...

cuiyu8550的博客 3449

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

oracle数据库优化-性能优化流程及目标

数据库优化目标 目标 根据角色的不同,数据库优化分为以下几个目标: 业务角度(关键用户): 减少用户页面响应时间 数据库角度(开发): 减少数据库SQL响应时间 数据库服务器角度(运维): 充分使用数据库服务器物理资源 减少数据库服务器CPU使用率 减少数据库服务器IO使用率 减少数据库服务器内存使用率 指标 SQL平均响应时间变短 优化前:数据库...

oradbm的博客 687

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

某单位Oracle数据库性能优化方案参考

近期开始了某数据中心的升级改造项目,其中基于Oracle的主业务系统也将面临升级,客户同时提出数据中心升级要考虑业务数据库的优化问题。参考历史数据库优化方案中的一些建议.

winrich的博客 1610

优化Oracle数据库性能:LIKE操作的优化

在 Oracle 数据库中,LIKE 操作是一种常用的模糊匹配方式,用于在字符串中查找符合指定模式的数据。然而,当处理大量数据时,使用 LIKE 操作可能导致查询性能下降。为了提高数据库的效率,本文将重点介绍如何优化使用 LIKE 操作的查询。 索引前缀搜索是一种优化 LIKE 操作的方法,通过使用索引的前缀匹配来提高查询性能。下面我们将详细介绍如何使用索引前缀搜索来优化 LIKE 操作。

小蓝枣的博客 4203

面试宝典: Oracle数据库db file scattered read等待事件处理过程

面试宝典: Oracle数据库db file scattered read等待事件处理过程

chenoracle的博客 870

Oracle数据库进行简单优化,Oracle数据库性能优化

此文章主要介绍的是通过优化数据库来大幅度的提高Oracle数据库性能,以下几个简单的相关步骤就可以简单实现Oracle数据库性能,下面就是文章的具体内容的描述,望你浏览之后会对其有所了解。数据库优化的讨论可以说是一个永恒的主题。资深的Oracle优化人员通常会要求提出Oracle数据库性能问题的人对数据库做一个statspack,贴出数据库配置等等。还有的人认为要抓出执行最慢的语句来进行优化。但实...

weixin_42214418的博客 1108

oracle union all 特别慢_值得收藏的Oracle数据库性能优化

值得收藏的Oracle数据库性能优化年尾了,新的一波面试军又要开始了,被问到最多的可能就是性能优化,尤其是数据库性能优化,这个面试题不管是初中高级工程师都会被问到。因此我觉得下面31点ORACLE优化还是值得调几个去面试。也方便以后平时开发时数据库性能优化时当字典来查。这是一篇ORACLE的优化,Mysql的优化请关注我,在之前的文章中有介绍。值得收藏的Oracle数据库性能优化1、SQ...

weixin_39853843的博客 1643
上一篇: ORACLE优化系列文章二 ──数据库的查询优化技术
下一篇: Oracle的面向对象技术基础入门
zonelive
博客等级 码龄23年 4粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值