ORACLE性能优化思路,相关命令和参数修改

Oracle 单机及 RAC 环境 db_files 参数修改 Oracle 数据库中 DB_FILES 定义了数据库中数据文件的个数,默认值为200,如果创建数据库文件时超过DB_FILES 定义的值就会报 ORA-00059 错误。下面分别演示单机及 RAC 环境下修改 db_files 参数的操作步骤。本例设置成1000,DB_FILES 生效需要重启数据库实例。在3个节点中的任一节点执行1-2步,在3个节点都执行3-4步。此参数,重启数据库后生效。RAC实例需全部重启。二、RAC 环境(3个节点为例) 阅读详情

ORACLE性能排查原因总结

前言

本文最主要是为遇到性能无从下手的小伙> 伴一个指导的方向,真正的优化过程,细致到分析oracle里面的每个等待事件,分析每个sql的执行计划,以及热点数据的分析等。内容就相当多了。

oracle的性能排查本人总结主要从三大方向入手

  • 服务器资源占用情况
  • oracle的参数设置
  • awr报告分析

服务器资源

服务器资源这块,最主要的就是通过linux下的总体情况(top),线程队列(vmstat),内存(free -m)等去排查 cpu 内存 磁盘 网络等资源占用情况。这里不做详细展开。

oracle参数设置

Oracle数据库中processes,sessions,transactions分别代表进程数、会话数及当前最大允许的交易量。这三个参数的调整,用的最多,根据自己的实际业务并发量进行合理的设置这三个值。

按照官方文档中描述,他们之间是有关系的。

以下是11.2.0.4数据库版本

sessions=(1.5*processes)+22

transactions=1.1*sessions

在10g版本中

sessions=(1.1*processes) +5

transactions=1.1*sessions

查看processes和sessions参数

SQL> show parameter processes
NAME                                  TYPE         VALUE
db_writer_processes                  integer     1
gcs_server_processes                 integer     0
job_queue_processes                  integer     10
log_archive_max_processes            integer     2
processes                            integer     50
SQL> show parameter sessions
NAME                                  TYPE         VALUE
license_max_sessions                 integer     0
license_sessions_warning             integer     0
logmnr_max_persistent_sessions       integer     1
sessions                             integer     60
shared_server_sessions               integer     10

修改processes和sessions值

SQL> alter system set processes=300 scope=spfile;
系统已更改。
SQL> alter system set sessions=335 scope=spfile;
系统已更改。

注意:修改processes和sessions值必须重启oracle服务器才能生效

awr报告分析

这里给出oracle awr报告导出的步骤,具体awr报告的分析过程,由于内容较多,将在后面的>章节单独介绍,如何分析和查看awr报告。

  • 1、 进入数据库 sqlplus / as sysdba

  • 2、查看用户 show parameter db_name

  • 3、开始压测后执行 exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT ();

  • 4、 结束压测后执行 exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT ();

  • 5、输入命令 @?/rdbms/admin/awrrpt

备注:4和5步骤中不执行,后面默认产生系统规定的时间节点(默认人一小时生成一次报告)

  • 6、 输入回车 默认是html格式

  • 7、 输入1,查询最近一天的

  • 8、 输入开始节点和结束节点

  • 9、输入想要生成的报告名称,以html格式结尾

  • 10、生成的awr默认在登陆数据库的路径(试验机:C:\Users\wangxh.PANACRO)

其他常用命令

查询数据库当前进程的连接数:

select count(*) from v$process;

查看数据库当前会话的连接数:

select count(*) from v$session;

查看数据库的并发连接数:

select count(*) from v$session where status='ACTIVE';

查看当前数据库建立的会话情况:

select sid,serial#,username,program,machine,status from v$session;

查询数据库允许的最大连接数:

select value from v$parameter where name = 'processes';

或者

show parameter processes;

查看是否有锁表

SELECT a.username,decode(b.type,'TM','TABLE LOCK','TX','ROW LOCK',NULL) LOCK_LEVEL,
c.owner,c.object_name,c.object_type,
a.sid,a.serial#,a.terminal,a.machine,a.program,a.osuser
FROM v$session a,v$lock b,dba_objects c
WHERE b.sid = a.sid
AND b.id1 = c.object_id(+)
AND a.username is NOT Null;

查询表空间使用情况

使用DBA权限登陆

SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
D.TOT_GROOTTE_MB "表空间大小(M)",
D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') 
"使用比",
F.TOTAL_BYTES "空闲空间(M)",
F.MAX_BYTES "最大块(M)"
FROM (SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
FROM SYS.DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) F,
(SELECT DD.TABLESPACE_NAME,
ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
FROM SYS.DBA_DATA_FILES DD
GROUP BY DD.TABLESPACE_NAME) D
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY 4 DESC;

结果:

表空间名表空间大小(M)已使用空间(M)使用比空闲空间(M)最大块(M)
CSP3000029947.3799.8252.639
SYSTEM500491.1998.248.817.94
SYSAUX440424.3196.4315.697.94
USERS50.448.804.564.56
UNDOTBS122415190.190.8522224.813968
发现表空间只有 52.63 M的空闲,猜测可能是表空间自动扩展失败的问题(表空间的增长量太高,ORACLE默认是50%),

修改表空间文件扩展方式:

SQL>ALTER DATABASE 
    DATAFILE '/u01/oracle/oradata/orcl/ccen01.dbf' AUTOEXTEND 
    ON NEXT 50M MAXSIZE UNLIMITED

总结

oracle提供了丰富的统计信息,包括会话,sql执行,事件等统计视图,可以通过这些视图进行oracle执行情况。本文皆旨在给遇到oracle性能问题无从下手的小伙伴。

Oracle存储过程从入门到精通:核心概念、实战案例与性能优化指南 在数据库开发中,存储过程是一种预编译并存储在数据库服务器端的程序单元,用于封装复杂的业务逻辑和数据操作。其核心原理在于将一系列SQL语句和控制逻辑组合成一个可重复调用的模块,在数据库端直接执行,从而减少网络传输开销和SQL解析时间。从技术价值看,存储过程能显著提升数据处理性能、增强数据安全性与操作原子性,并实现业务逻辑的集中管理和代码复用。典型的应用场景包括高频的批量数据处理、复杂的报表生成、需要强事务保证的金融操作以及数据迁移清洗等任务。本文聚焦Oracle存储过程,通过对比函数与触发器的区别,解析其设计 阅读详情

相关推荐

Oracle数据库核心架构、性能优化与高可用实战指南

数据库作为现代信息系统的核心,其架构设计与性能优化是保障业务连续性和数据一致性的基石。理解数据库的体系结构,包括内存管理、进程协作和存储机制,是进行高效运维和深度调优的前提。在众多企业级应用中,Oracle数据库凭借其成熟稳定的架构和丰富的功能集,尤其在处理高并发事务和海量数据分析方面展现出独特的技术价值。对于金融、电信等关键领域的核心系统,掌握Oracle的核心原理与实战技巧,能够有效提升系统稳定性与处理性能。本文聚焦于Oracle数据库的实战应用,深入解析其内存结构中的SGA与PGA、进程结构中的LGW

weixin_30876945的博客 432

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

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

小蓝枣的博客 5683

Oracle数据库AES加密实战:DBMS_CRYPTO包原理、避坑与性能优化

数据加密是保障数据安全的核心技术之一,其原理在于通过特定算法将明文转换为不可读的密文,确保即使数据被非法获取也无法直接识别。AES(高级加密标准)作为当前广泛使用的对称加密算法,因其安全性高、性能均衡,成为数据库内加密的常用选择。在Oracle数据库环境中,内置的DBMS_CRYPTO包为开发者提供了原生的、高效的加密工具集,其价值在于无需依赖外部应用,即可在数据库层面实现透明的数据加解密,有效应对数据文件泄露或DBA误操作等风险。这一技术尤其适用于需要对身份证号、手机号等敏感字段进行加密存储,但又受限于复

weixin_34315485的博客 392

【数据库】Oracle内存结构与参数调优

在操作系统层面,默认情况下内存页大小通常为4KB。大页是一种内存管理机制,将标准内存页尺寸增大,例如从4KB改为2MB。使用大页可以减少TLB(Translation Lookaside Buffer)未命中的情况,从而降低页交换频率和I/O开销,提高系统的性能,特别是在大规模内存管理和Oracle数据库等场景下。

FixPng的博客 4941

.NET命令行参数解析的工程化实践与避坑指南

命令行参数解析是CLI工具开发中最基础却极易被低估的核心能力,它直接关系到程序的可用性、可维护性与跨平台兼容性。其本质是将用户输入的字符串序列,按约定协议(如/param:value)结构化为键值对,并支持大小写无关匹配、重复参数聚合、别名映射与默认值兜底等关键语义。在.NET生态中,从轻量手写方案到System.CommandLine等现代库,选择需权衡项目规模、团队能力与交付要求。本文聚焦工程落地细节,涵盖Windows路径空格处理、中文编码适配、PowerShell引号穿透、文化安全转换(ToLowe

lanmh的专栏 409

手把手教你用Python模拟侧信道攻击:从电磁辐射到数据窃取(附防御代码)

本文详细介绍了如何使用Python模拟侧信道攻击,从电磁辐射信号采集到数据窃取的全过程,并提供了实用的防御代码。通过实战案例,帮助安全研究员和开发者理解侧信道攻击原理,掌握信号处理与图像重建技术,同时学习有效的噪声干扰和电磁屏蔽防御措施。

weixin_28716443的博客 161

全面整理的Oracel 数据库性能调优方案

性能优化

qq_22201881的博客 2937

主流 AI 插件 之一的 Copilot 介绍

Copilot 是微软推出的一款人工智能助手,旨在通过自然语言交互帮助您提升工作效率和创造力,覆盖多平台,提供智能问答、内容生成、代码辅助等功能。其核心定位为“日常 AI 伴侣”,旨在通过自然语言交互提升工作与生活效率。

u014695938的博客 6895

Oracle查看与修改隐藏参数

可以通过ALTER SESSION或ALTER SYSTEM语句修改隐藏参数。部分静态参数修改后需要重启数据库生效。查看指定隐藏参数,在上面SQL的基础上添加条件。

Sebastien23的博客 2926

Alibaba Java Coding Guidelines,以后我的Java代码规范,就靠它了

前言 对于Java代码规范,业界有统一的标准,不少公司对此都有一定的要求。但是即便如此,庞大的Java使用者由于经验很水平的限制,未必有规范编码的意识,而且即便经验丰富的老Java 程序员也无法做到时刻将规范牢记于心。所以对于代码规范扫描工具,一经问世就广受青睐,阿里巴巴出品的Alibaba Java Coding Guidelines(阿里巴巴Java代码规约扫描,以下简称为AJCG)插件便是其...

java梦工厂 859

微信小程序消息推送全攻略:从模板消息到订阅消息的实战避坑指南

本文深入解析微信小程序消息推送机制,对比模板消息、订阅消息与客服消息的核心差异与适用场景。重点提供订阅消息从用户授权设计、前端代码实现到后端稳定发送的完整实战指南,并分享提升消息点击率的文案与运营技巧,帮助开发者构建高效、用户友好的消息推送体系。

b3n4m5q6w7的博客 336

exp导出excel oracle_Oracle故障排查思路

Oracle故障排查思路摘要: 一、引言 在我们日常运维项目中,数据库的运维都位于核心的位置,原因有两个,一是数据库的运维涉及的范围非常广泛,数据库的种类比较多,二是数据库的安全性非常重要,所有涉及到数据库的操作,都需要非常谨慎。 数据库的问题,大致可分为两大类,一是数据库系统稳定问题,一是数据库系统性能问题。 一、引言在我们日常运维项目中,数据库的运维都位于核心的位置,原因有两个,一是数据库的运...

weixin_39553705的博客 139

解锁RK1126与SC132GS摄像头适配密码:技术与代码全解析

本文详细介绍了瑞芯微RK1126芯片与SC132GS摄像头的适配方法。首先分析了RK1126的四核Cortex-A7处理器、Mali-T860 GPU等硬件特性,以及SC132GS的130万像素、全局快门等技术参数。重点阐述了基于MIPI CSI接口的硬件连接原理和基于V4L2框架的软件驱动设计,并提供了完整的初始化、数据采集和图像处理代码实现。针对常见连接和图像质量问题给出了解决方案,展现了该组合在智能安防、工业检测等领域的应用潜力,为开发者提供了实用的技术参考。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 1503

ORACLE的 软 软 软 解析!

把执行计划缓存在应用中间件里,或者是微服务连接池里,叫做 软, 软,软 解析

海鲨数据库架构师 1320

【11】科曼医疗——科曼医疗 嵌入式--面试,校招,面试问答记录

科曼医疗嵌入式校招面试记录:3位面试官分别考察应用层技术、底层技术和HR面。技术问题涵盖C++特性(多态、虚函数、指针与引用区别)、内存管理(malloc与new对比)、嵌入式基础(51最小系统、IIC/SPI协议)及项目经验(智能黑板擦专利项目)。同时考察了Linux使用经验、STM32开发及嵌入式操作系统认知。最后环节应聘者询问了开发环境及面试流程。面试内容全面覆盖嵌入式开发核心知识点。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 1251

103:vue+cesium 设置球体水部分颜色为黄色

本示例在 Vue + cesium 项目中设置球体水部分颜色为黄色。这里的操作是将球体内部设置为空的,在地球内部添加一个黄色的圆球,这样水的部分就被突出出来了。直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果.

大剑师兰特的GIS世界 625

KDB和Oracle的性能pk小记

在偶然的机会听到了KDB,然后带着好奇和新鲜感体验了一把这个传说中和Oracle 相似度达到99%的数据库。 其中一部分的驱动力在于这个活动的奖品很丰厚,参加活动后可以拿到一个iwatch,确实是很划算的一个活动。 而对于K...

congbao6525的博客 509

本地构建AI智能分析助手之 05 PandasAI如何MySQL数据库 (教程含源码)

与 PostgreSQL 连接器类似,MySQL 连接器允许您连接到 MySQL 数据库。即使您不熟悉 MySQL 或 PandasAI,它也设计得易于使用。

iCloudEnd的博客 703

快速入门到精通:一篇学会Oracle

Oracle全面的基础知识和知识点的举例,帮助初学者快速入门。 SQL语句,SQL查询,Oracle函数,代码块知识,条件判断/循环语句,索引、游标,锁,视图,存储过程,触发器,分区表,Oracle优化,建模

weixin_63021300的博客 4万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

数据库连接池性能优化实战

MySQL 当前存在执行慢 / 缓存线程耗尽 / 排序临时表密集的问题,间接导致应用端连接获取慢,连接池设置不当进一步放大了问题。

m0_37242314的博客 1128

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

oracle初始化数据,深入解析Oracle(数据库的初始化)

基本信息书名:深入解析Oracle:数据库的初始化定价:89.00元作者:盖国强出版社:人民邮电出版社出版日期:2013-09-00ISBN:9787115329035字数:页码:版次:装帧:开本:商品标识:3.159787115329035编辑推荐内容提要《深入解析Oracle:数据库的初始化》围绕“数据库的初始化”这个主题展开,详细介绍了数据库的创建、使用模板创建数据库、插接式数据库、数据库的...

weixin_35639451的博客 581

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Oracle数据库基本优化思路

一、性能的评价         一般来讲,对于数据库而言,性能差主要体现在以下方面: 1.本机和客户端远程访问数据库,连接响应不及时,或者出现连接长时间 尝试后连接超时甚至无法连接; 2.在数据库后台上的操作,包括:执行普通的增、删、改、查SQL,结果返回时   间延迟较长,尤其是一些小的数据操作,等待的时间也超过了;存储过程和包的执行缓慢,也可以认为是“差的性能”;     3.前端应用界面上

john2522的专栏 1409

expdp包含LOB类型大字段时遇到的ORA-27504和ORA-01555相关问题

文章目录问题报错一、多个expdp任务无法停止二、服务器rac1掉出集群三、expdp问题排查四、重新导出dmp文件 问题报错 Oracle数据库在进行expdp时发现进度很慢,通过查看alert日志发现如下错误信息: Errors in file /oracle/app/oracle/diag/rdbms/orcl/orcl11/trace/orcl11_m000_206770.trc (incident=528938): ORA-00603: ORACLE server session termin

狗剩儿的记忆博客 2919

tomcat的并发与性能优化思路

最近负责一套系统,用的是lvs+nginx+tomcat+varnish+memcached+oracle的架构,参考了网上一些大牛的博客资料,供大家参考。 tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。Tomcat默认配置的最大请求数是150,也就是说同时支持150个并发...

weixin_34281537的博客 78

rac 遭遇GC BUFFER BUSY 处理思路

一朋友求助说他的ORACLE RAC服务器负载不是很稳定,时高时低,且没有任何规律。摘取负载高峰时间的一段日志来分析,最大的等待如下: ^LTop SQL Statements ...

cpda53349199的博客 399

Oracle时间戳处理实战:类型选择、转换函数与性能优化指南

在数据库开发中,时间戳处理是确保数据一致性与系统性能的关键技术。其核心原理在于通过不同的数据类型(如DATE、TIMESTAMP及其时区变体)来精确表示时间点,并处理时区转换与精度问题。掌握时间戳技术对于构建健壮的分布式系统、保障金融交易准确性和实现高效数据查询具有重要价值,尤其在需要处理跨时区业务、审计日志和高并发事务的场景中。本文聚焦Oracle数据库,深入解析时间戳类型选型策略,详解TO_TIMESTAMP、CAST、AT TIME ZONE等核心转换函数的使用技巧,并探讨在毫秒级处理、索引优化和表分

weixin_34194087的博客 275
下一篇: 程序员兼职好工具,免费使用,内网穿透工具,通过外网访问个人本地电脑
gzcsschen
博客等级 码龄16年 72粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gzcsschen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值