0x-1 记一次SGA PGA设置失败,重新开库

news2025/6/7 12:50:24

0、生产侧定时平台上传数据库11g hang,修改无法startup

厂商统一发放的虚拟机作为前置机导入平台后,直接开机使用。主机在虚拟化平台中,实例卡死后,按照虚拟机系统64G,原SGA=2g,不知哪个大聪明给默认设置的。保守计划修改为16G

小伙伴一顿操作,修改的内存远大于可用内存,实例无法startup

1、修改SGA、PGA

现场和生产也许会因为各式各样的要求,例如:业务要求、其他厂商提出等(需要修改最大的内存使用)去修改Oracle数据库的初始化参数,但如果修改错误,重启之后就会导致数据库无法启动。

比如参数sga_max_size=32G、sga_target=24G,某位手抖修改成sga_max_size=16G、sga_target=24G,数据库启动的时候提示sga_target大于sga_max_size,无法启动。

于是需要修改初始化参数,由于数据库没有办法启动到任何阶段,无法使用alter system修改parameter。祭出手动大法,修改数据库文本参数文件。

2、spfile文件位置

默认Oracle是使用spfile启动,这个文件二级制文件,看见的是一堆乱码(极端情况也有修改后保存成pfile的,非极端不必要挑战)对于DBA看是不能直接修改的。大家能修改的是init.ora这个文件,属于文本类型,需要先行进行参数文件的转换。操作如下:

是不是大部分人都SID都是orcl,这个全省发放的前置机sid就是orcl

查找spfile文件位置,切换到该目录下

默认位置:

Linux,oracle用户记得查看.bash_profile定义的$ORACLE_HOME

$ORACLE_HOME/dbs/spfileorcl.ora

Windows:

%ORACLE_HOME%\database\spfileorcl.ora

cd $ORACLE_HOME/dbs

3、操作步骤

登录sqlplus

sqlplus / as sysdba

1、create pfile from spfile;

生成的initorcl.ora,可修改的文本类型的初始化参数文件(路径位于:$ORACLE_HOME/dbs/)

2、更正initorcl.ora里面错误的参数(vim修改参数为设置之前的那部分)

alter system set sga_max_size=16G scope=spfile;

alter system set sga_target=16G scope=spfile;

sga_max_size=16G

sga_target=16G

alter system set pga_aggregate_target=8196M scope=spfile;

/u01/app/oracle/product/11.2.0/db_01/dbs

startup pfile='/u01/app/oracle/product/11.2.0/db_01/dbs/initorcl.ora';

3、重新登录

提示connect to idle instance

数据库执行启动:startup pfile='/u01/app/oracle/product/11.2.0/db_01/dbs/initorcl.ora';

能够正常启动后确认参数没有错误,按照业务使用再调整。

4、最后再执行create spfile from pfile

执行任何修改前,务必备份任何要修改的文件,cp一次,比什么都好。

4、SGA和PGA最佳实践(OCM也是必考):

  • ​总内存分配,按照64g测算​
    ​​物理内存的80%​​ 分配给Oracle(约51.2GB),剩余20%保留给操作系统及其他进程。
    公式:Oracle可用内存 = 64GB × 80% = 51.2GB,换成MB后很多老师按照习惯再减-1,

  • 这个部分的典故。“+1MB”的由来与适用性​

  • 在早期版本(如Oracle 8i/9i),SGA计算公式包含额外1MB的固定开销:
    SGA = (db_block_buffers × block_size) + (shared_pool_size + ...) + 1MB这是为SGA内部管理预留的空间。

  • ​10g及以上​​:
    自动内存管理(AMM/ASMM)已动态处理此开销,​无需手动减1MB​。
    不过若手动配置组件(如shared_pool_size),仍需确保总和 ≤ SGA_MAX_SIZE,但无需额外扣除。

  • 直接使用目标值​​,验证设置​

  • --设置SGA_TARGET或SGA_MAX_SIZE时,直接指定目标值(单位可为GB/MB):
    --设置SGA_MAX_SIZE=36G(64G物理内存的OLTP场景)
    ALTER SYSTEM SET SGA_MAX_SIZE=36G SCOPE=SPFILE;
    ALTER SYSTEM SET SGA_TARGET=36G SCOPE=BOTH;
    
    --重启数据库后,通过视图确认实际分配:
    -- 检查动态组件分配              
    SELECT * FROM V$SGA_DYNAMIC_COMPONENTS;
    SYS@orcl> SELECT * FROM V$SGA_DYNAMIC_COMPONENTS;
    
    COMPONENT                                                        CURRENT_SIZE   MIN_SIZE   MAX_SIZE USER_SPECIFIED_SIZE OPER_COUNT LAST_OPER_TYP LAST_OPER LAST_OPER_TIME      GRANULE_SIZE
    ---------------------------------------------------------------- ------------ ---------- ---------- ------------------- ---------- ------------- --------- ------------------- ------------
    shared pool                                                        2046820352 1979711488 2046820352                   0          1 GROW          DEFERRED  2025-05-29 01:05:38     33554432
    large pool                                                          167772160  167772160 1207959552                   0          1 SHRINK        DEFERRED  2025-05-27 15:55:31     33554432
    java pool                                                           134217728  134217728  134217728                   0          0 STATIC                                          33554432
    streams pool                                                                0          0          0                   0          0 STATIC                                          33554432
    DEFAULT buffer cache                                               1.4328E+10 1.3355E+10 1.4395E+10                   0          2 SHRINK        DEFERRED  2025-05-29 01:05:38     33554432
    KEEP buffer cache                                                           0          0          0                   0          0 STATIC                                          33554432
    RECYCLE buffer cache                                                        0          0          0                   0          0 STATIC                                          33554432
    DEFAULT 2K buffer cache                                                     0          0          0                   0          0 STATIC                                          33554432
    DEFAULT 4K buffer cache                                                     0          0          0                   0          0 STATIC                                          33554432
    DEFAULT 8K buffer cache                                                     0          0          0                   0          0 STATIC                                          33554432
    DEFAULT 16K buffer cache                                                    0          0          0                   0          0 STATIC                                          33554432
    DEFAULT 32K buffer cache                                                    0          0          0                   0          0 STATIC                                          33554432
    Shared IO Pool                                                              0          0          0                   0          0 STATIC                                          33554432
    ASM Buffer Cache                                                            0          0          0                   0          0 STATIC                                          33554432
    
    14 rows selected.
    

5、动态性能视图监控​:

​SGA使用​:SELECT * FROM V$SGASTAT;
​PGA使用​:SELECT * FROM V$PGASTAT WHERE name='maximum PGA allocated';

建议调整​:

SELECT * FROM V$SGA_TARGET_ADVICE;

SELECT * FROM V$PGA_TARGET_ADVICE;

SYS@orcl> SELECT * FROM V$PGASTAT WHERE name='maximum PGA allocated';

NAME                                                                  VALUE UNIT
---------------------------------------------------------------- ---------- ------------
maximum PGA allocated                                             475544576 bytes

SYS@orcl> SELECT * FROM V$SGA_TARGET_ADVICE;

  SGA_SIZE SGA_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR ESTD_PHYSICAL_READS
---------- --------------- ------------ ------------------- -------------------
      4000             .25        17598              1.0743             4496031
      6000            .375        16902              1.0318             3253636
      8000              .5        16587              1.0126             2988942
     10000            .625        16435              1.0033             2757537
     12000             .75        16392              1.0007             2696598
     14000            .875        16383              1.0001             2686129
     16000               1        16381                   1             2684518
     18000           1.125        16381                   1             2684518
     20000            1.25        16381                   1             2684518
     22000           1.375        16381                   1             2684518
     24000             1.5        16381                   1             2684518
     26000           1.625        16381                   1             2684518
     28000            1.75        16352               .9982             2634586
     30000           1.875        16348                .998             2634586
     32000               2        16348                .998             2634586

15 rows selected.

SYS@orcl> SELECT * FROM V$PGA_TARGET_ADVICE;

PGA_TARGET_FOR_ESTIMATE PGA_TARGET_FACTOR ADV BYTES_PROCESSED  ESTD_TIME ESTD_EXTRA_BYTES_RW
----------------------- ----------------- --- --------------- ---------- -------------------
ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_OVERALLOC_COUNT
----------------------------- --------------------
             2097152000              .125 ON       3.6002E+10     742998                   0
                          100                    0

             4194304000               .25 ON       3.6002E+10     742998                   0
                          100                    0

             8388608000                .5 ON       3.6002E+10     742998                   0
                          100                    0

             1.2583E+10               .75 ON       3.6002E+10     742998                   0
                          100                    0

             1.6777E+10                 1 ON       3.6002E+10     742998                   0
                          100                    0

             2.0133E+10               1.2 ON       3.6002E+10     742998                   0
                          100                    0

             2.3488E+10               1.4 ON       3.6002E+10     742998                   0
                          100                    0

             2.6844E+10               1.6 ON       3.6002E+10     742998                   0
                          100                    0

             3.0199E+10               1.8 ON       3.6002E+10     742998                   0
                          100                    0

             3.3554E+10                 2 ON       3.6002E+10     742998                   0
                          100                    0

             5.0332E+10                 3 ON       3.6002E+10     742998                   0
                          100                    0

             6.7109E+10                 4 ON       3.6002E+10     742998                   0
                          100                    0

             1.0066E+11                 6 ON       3.6002E+10     742998                   0
                          100                    0

             1.3422E+11                 8 ON       3.6002E+10     742998                   0
                          100                    0


14 rows selected.

SYS@orcl>

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2402912.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【科研绘图系列】R语言绘制和弦图(Chord diagram plot)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理相关性计算和弦图系统信息介绍 本文介绍了一个基于R语言的数据分析和可视化流程,主要用于生成和弦图(Chord Diagram)。和弦图是一种用于展示…

PPT转图片拼贴工具 v3.0

软件介绍 这个软件就是将PPT文件转换为图片并且拼接起来。 这个代码支持导入单个文件也支持导入文件夹 但是目前还没有解决可视化界面问题。 效果展示 软件源码 import os import re import win32com.client from PIL import Image from typing import List, Uniondef con…

关于安科瑞APD局部放电监测装置解决方案的应用分析

1 什么是局部放电? 局部放电(Partial Discharge, PD)是指发生在电气设备绝缘系统局部区域的、未贯穿整个电极的微小放电现象。它通常发生在高压电气设备(如变压器、开关柜、电缆、GIS等)内部存在绝缘缺陷、电场集中或…

设计模式-2 结构型模式

一、代理模式 1、举例 海外代购 2、代理基本结构图 3、静态代理 1、真实类实现一个接口,代理类也实现这个接口。 2、代理类通过真实对象调用真实类的方法。 4、静态代理和动态代理的区别 1、静态代理在编译时就已经实现了,编译完成后代理类是一个实际…

大量企业系统超龄服役!R²AIN SUITE 一体化企业提效解决方案重构零售数智化基因

《中国百货商业协会2024零售IT及数字化系统需求调查报告》为我们呈现了零售企业在数字化转型中的复杂图景。数据显示,82%的企业高管对AI改变行业未来充满信心 source:中国百货商业协会 ,零售IT及数字化系统需求调查报告 ,2024年 但…

Cesium使用glb模型、图片标记来实现实时轨迹

目录 1、使用glb模型进行实时轨迹 2、使用图片进行实时轨迹 基于上一篇加载基础地图的代码上继续开发 vue中加载Cesium地图(天地图、高德地图)-CSDN博客文章浏览阅读164次。vue中加载Cesium三维地球https://blog.csdn.net/ssy001128/article/details…

Android基础回顾】六:安卓显示机制Surface 、 SurfaceFlinger、Choreographer

在 Android 系统中,Surface 和 SurfaceFlinger 是图形渲染系统的核心组件,负责屏幕显示内容的合成与管理。它们协同工作,使各种 App 和系统界面能够高效地显示在屏幕上。 1 Surface 是什么? Surface 是一个抽象的图形缓冲区接口…

敏捷开发中如何避免过度加班

在敏捷开发过程中避免过度加班,需要明确敏捷原则、合理规划迭代任务、加强团队沟通、优化流程效率、设定合理的工作负荷、注重团队士气和成员健康。明确敏捷原则,即保证可持续发展的步调,避免频繁地变更需求、过度承诺任务量。合理规划迭代任…

第1章_数据分析认知_知识点笔记

来自:数据分析自学课程-戴戴戴师兄 逐字稿:【课程4.0】第1章_分析认知_知识点笔记 【课程4.0】第1章 分析认知 知识点总结 数据分析的核心价值不是工具,而是用数据驱动业务增长。 一、数据分析的本质认知 数据分析是什么? 不是酷…

111页可编辑精品PPT | 华为业务变革框架及战略级项目管理华为变革管理华为企业变革华为的管理模式案例培训

这份文档是关于华为公司业务变革管理框架(BTMS)V2.0的详细介绍,涵盖从年度规划到项目执行的全流程管理。BTMS框架通过变革战略规划、年度规划流程、解决方案开发(PMOP流程)、运作管理流程等多个模块,系统地…

html文字红色粗体,闪烁渐变动画效果

1. 代码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>红色粗体闪烁文字表格</title><s…

Linux文件系统详解:从入门到精通

无论是开发高性能应用还是进行系统级编程&#xff0c;文件系统都是我们必须掌握的基础知识。今天&#xff0c;我将带大家深入浅出地了解Linux文件系统的核心概念和工作原理。 一、Linux文件系统概述 Linux文件系统是操作系统中负责管理持久存储设备上数据的子系统。它不仅仅是…

Electron Fiddle使用笔记

文章目录 下载界面示意图保存和打开项目save 和 save as forge project 其他文档打包报错 RequestError: read ECONNRESET 想要打包前端程序&#xff0c;奈何本地环境总是报错&#xff0c;意外发现可以通过electron fiddle直接调试代码。 下载 百度网盘地址&#xff1a; 首次…

企业培训学习考试系统源码 ThinkPHP框架+Uniapp支持多终端适配部署

在数字化转型浪潮下&#xff0c;企业对高效培训与精准考核的需求日益迫切。一套功能完备、多终端适配且易于定制的培训学习考试系统&#xff0c;成为企业提升员工能力、检验培训成果的关键工具。本文给大家分享一款基于 ThinkPHP 框架与 Uniapp 开发的企业培训学习考试系统&…

SpringBoot手动实现流式输出方案整理以及SSE规范输出详解

背景&#xff1a; 最近做流式输出时&#xff0c;一直使用python实现的&#xff0c;应需求方的要求&#xff0c;需要通过java应用做一次封装并在java侧完成系统鉴权、模型鉴权等功能后才能真正去调用智能体应用&#xff0c;基于此调研java实现流式输出的几种方式&#xff0c;并…

深入解析I²C总线接口:从基础到应用

IC总线概述与基本概念 一句话概述&#xff1a;本章节将介绍IC总线的历史、定义及其在嵌入式系统中的作用&#xff0c;帮助读者建立对IC的基本理解。 IC&#xff08;Inter-Integrated Circuit&#xff09;总线是一种广泛应用于嵌入式系统中的串行通信协议&#xff0c;最初由飞利…

Sklearn 机器学习 缺失值处理 检测数据每列的缺失值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在代码与灵感交织的数字世界里和大家相遇~💖 ✨ 在这个技术浪潮奔涌的时代,我们既是探索者,也是分享者。我始终相信,每一行代码都是通往创新的钥匙,而分享则能让这把钥匙照亮更多人的…

STL解析——list的使用

目录 1.简介 2.构造函数 3.迭代器 3.1封装 3.2迭代器分类 4.排序性能 4.1链式与数组 4.2缓存读取 1.简介 STL容器中提供的list容器也是一种顺序容器&#xff0c;底层实现方式是带头双向链表&#xff0c;这种实现方式能比单链表更高效的访问数据。 下面围绕部分重要接口…

MQTTX连接阿里云的物联网配置

本文的目标是通过MQTTX的客户端&#xff0c;连接到阿里云的物联网的平台&#xff0c;发送温度信息&#xff0c;在阿里云的平台中显示出来。阿里云免费注册&#xff0c;免费有一个MQTT的服务器。有数量限制&#xff0c;但是对于测试来讲&#xff0c;已经足够。 1、注册阿里云的物…

20250606-C#知识:匿名函数、Lambda表达式与闭包

C#知识&#xff1a;匿名方法、Lambda表达式与闭包 闭包乍一听感觉很复杂&#xff0c;其实一点也不简单 1、匿名方法 没有方法名的方法一般用于委托和事件 Func<int, int, int> myAction delegate(int a, int b) { return a b; }; Console.WriteLine( myAction(1, 2)…