ITPub博客

首页 > 数据库 > Oracle > 变更oracle 11.2.0.3 rac sga自动管理为sga手工管理

变更oracle 11.2.0.3 rac sga自动管理为sga手工管理

原创 Oracle 作者:wisdomone1 时间:2015-09-19 21:58:33 0 删除 编辑

结论:

   1,关闭数据库实例即可以基于PFILE重建SPFILE
   2,即使RAC的数据库SPFILE是存储在ASM中,所以在基于PFILE创建SPFILE,一定要采用语法形式,create spfile='+asm/spfile具体路径' from pfile='手工PFILE存储路径'
   3,即使在PFILE手工中未指定JAVA_POOL_SIZE参数,启动数据库实例后,此参数仍有值
   4,共享池参数有一个最小的值,否则启动数据库实例报错
   5,关闭RAC数据库实例的SGA自动管理为手工管理
      sga_target=0
      db_cache_size=xm
      shared_pool_size=ym
      large_pool_size=zm
   6,至于各个SGA组件具体配置多大,不在本文讨论范围

背景:

    调整11.2.0.3 rac的sga自动管理方式为sga各组件手工指定方式


测试:



1,调整前查看节点1的SGA配置,可见为SGA自动管理,未启用PGA及SGA全自动管理模式
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0


2,节点1在启动SGA自动管理模式下,仅SGA_MAX_SIZE及SGA_TARGET参数有值,其它SGA组件皆为0,表示各组件根据当时数据库负载
   动态调整
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 564M
sga_target                           big integer 564M
SQL> show parameter db_cach


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 0
SQL> show parameter shared_pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size                     big integer 0
SQL> show parameter log_buffer


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_buffer                           integer     3297280
SQL> show parameter _pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 0
large_pool_size                      big integer 0
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 0
streams_pool_size                    big integer 0
SQL> 


3,查看节点2的SGA配置及SGA各组件的配置情况,2个节点的SGA相关参数配置相同
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 564M
sga_target                           big integer 564M
SQL> show parameter db_cach


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 0
SQL> show parameter shared_pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size                     big integer 0
SQL> show parameter log_buffer


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_buffer                           integer     3297280
SQL> show parameter _pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 0
large_pool_size                      big integer 0
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 0
streams_pool_size                    big integer 0
SQL> 


4,参数文件是存储在ASM中,2个节点相同
SQL> show parameter spfile


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      +DATA/jingfa/spfilejingfa.ora


5,调整SGA的配置前先备份基于ASM存储的SPFILE
ASMCMD> ls -l
Type           Redund  Striped  Time             Sys  Name
                                                 Y    CONTROLFILE/
                                                 Y    DATAFILE/
                                                 Y    ONLINELOG/
                                                 Y    PARAMETERFILE/
                                                 Y    TEMPFILE/
                                                 N    spfilejingfa.ora => +DATA/JINGFA/PARAMETERFILE/spfile.267.849265097
ASMCMD> cp spfilejingfa.ora spfilejingfa.ora_20150919bak
copying +data/jingfa/spfilejingfa.ora -> +data/jingfa/spfilejingfa.ora_20150919bak
ASMCMD> ls -l
Type           Redund  Striped  Time             Sys  Name
                                                 Y    CONTROLFILE/
                                                 Y    DATAFILE/
                                                 Y    ONLINELOG/
                                                 Y    PARAMETERFILE/
                                                 Y    TEMPFILE/
                                                 N    spfilejingfa.ora => +DATA/JINGFA/PARAMETERFILE/spfile.267.849265097
                                                 N    spfilejingfa.ora_20150919bak => +DATA/ASM/PARAMETERFILE/spfilejingfa.ora_20150919bak.261.890773905




6,在节点1基于SPFILE生成PFILE        
SQL> create pfile='/home/oracle/jingfa_pfile.ora' from spfile;


File created.   




7,在生成的PFILE添加SGA各组件大小,调整SGA管理为手工管理各SGA组件


[oracle@jingfa1 ~]$ tail -4f /home/oracle/jingfa_pfile.ora
sga_target=0
db_cache_size=400m
shared_pool_size=100m
large_pool_size=20m


8,关闭RAC 2个节点数据库实例,在2个节点皆运行
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>      




9,在节点1基于上述的PFILE重建SPFILE
SQL> create spfile from pfile='/home/oracle/jingfa_pfile.ora';


File created.         


10,先重启节点1数据库实例,发现手工指定的共享池大小太小
SQL> startup
ORA-00371: not enough shared pool memory, should be atleast 300699270 bytes
SQL>   


11,调整上述的PFILE文件,加大共享池大小为287M,减少DB_CACHE_SIZE为213M
[oracle@jingfa1 ~]$ tail -4f /home/oracle/jingfa_pfile.ora
sga_target=0
db_cache_size=213m
shared_pool_size=287m
large_pool_size=20m


12,再次基于PFILE重建SPFILE
SQL> create spfile from pfile='/home/oracle/jingfa_pfile.ora';


File created.


13,重启节点1数据库实例
SQL> startup
ORACLE instance started.


Total System Global Area  580431872 bytes
Fixed Size                  2230432 bytes
Variable Size             348129120 bytes
Database Buffers          226492416 bytes
Redo Buffers                3579904 bytes
Database mounted.
Database opened.




14,确认节点1数据库实例SGA各组件配置合理,只是每个手工指定的组件有些稍有上调大小
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 556M
sga_target                           big integer 0
SQL> show parameter db_cache


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 216M
SQL> show parameter pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 24M
large_pool_size                      big integer 20M
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 288M
streams_pool_size                    big integer 0
SQL> show parameter log_buffer


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_buffer                           integer     3371008




15,启动节点2的数据库实例
SQL> startup
ORACLE instance started.


Total System Global Area  588746752 bytes
Fixed Size                  2230592 bytes
Variable Size             239077056 bytes
Database Buffers          343932928 bytes
Redo Buffers                3506176 bytes
Database mounted.
Database opened.


16,确认节点2数据库实例SGA各组件配置合理,可见节点2的数据库实例没有调整为SGA手工管理方式
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 564M
sga_target                           big integer 564M
SQL> show parameter db_cache


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 0
SQL> show parameter pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 0
large_pool_size                      big integer 0
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 0
streams_pool_size                    big integer 0




17,看看节点1数据库实例SPFILE的配置
SQL> show parameter spfile


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /u01/app/oracle/product/11.2.0
                                                 .4/db_1/dbs/spfilejingfa1.ora


18,看看节点2数据库实例的SPFIEL的配置
SQL> show parameter spfile


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      +DATA/jingfa/spfilejingfa.ora
SQL> 




19,由上可知,节点2仍采用原有的SPFILE,所以仍采用自动管理SGA,而节点1采用新的文件系统的SPFILE




20,关闭节点2的数据库实例
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.


21,关闭节点1的数据库实例,基于上述最新的PFILE创建基于ASM目录的SPFILE
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.




SQL> create spfile='+DATA/jingfa/spfilejingfa.ora' from pfile='/home/oracle/jingfa_pfile.ora';


File created.


22,重启节点1的数据库实例
SQL> startup
ORACLE instance started.


Total System Global Area  580431872 bytes
Fixed Size                  2230432 bytes
Variable Size             348129120 bytes
Database Buffers          226492416 bytes
Redo Buffers                3579904 bytes
Database mounted.
Database opened.


23,确认节点1的数据库实例SGA各组件配置是否合理
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 556M
sga_target                           big integer 0
SQL> show parameter db_cach


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 216M
SQL> show parameter _pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 24M
large_pool_size                      big integer 20M
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 288M
streams_pool_size                    big integer 0




24,确认节点1数据库实例启动正常,启动节点2数据库实例
SQL> startup
ORACLE instance started.


Total System Global Area  580431872 bytes
Fixed Size                  2230432 bytes
Variable Size             348129120 bytes
Database Buffers          226492416 bytes
Redo Buffers                3579904 bytes
Database mounted.
Database opened.


25,确认节点2数据库实例SGA各组件配置是否合理
SQL> show parameter memory


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0
SQL> show parameter sga_


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 556M
sga_target                           big integer 0
SQL> show parameter db_cach


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_advice                      string      ON
db_cache_size                        big integer 216M
SQL> show parameter _pool_size


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
global_context_pool_size             string
java_pool_size                       big integer 24M
large_pool_size                      big integer 20M
olap_page_pool_size                  big integer 0
shared_pool_size                     big integer 288M
streams_pool_size                    big integer 0


个人简介


8年oracle从业经验,具备丰富的oracle技能,目前在国内北京某专业oracle服务公司从事高级技术顾问。
服务过的客户:
中国电信
中国移动
中国联通
中国电通
国家电网
四川达州商业银行
湖南老百姓大药房
山西省公安厅
中国邮政
北京302医院     
河北廊坊新奥集团公司

 项目经验:
中国电信3G项目AAA系统数据库部署及优化
      中国联通4G数据库性能分析与优化
中国联通CRM数据库性能优化
中国移动10086电商平台数据库部署及优化
湖南老百姓大药房ERR数据库sql优化项目
四川达州商业银行TCBS核心业务系统数据库模型设计和RAC部署及优化
四川达州商业银行TCBS核心业务系统后端批处理存储过程功能模块编写及优化
北京高铁信号监控系统RAC数据库部署及优化
河南宇通客车数据库性能优化
中国电信电商平台核心采购模块表模型设计及优化
中国邮政储蓄系统数据库性能优化及sql优化
北京302医院数据库迁移实施
河北廊坊新奥data guard部署及优化
山西公安厅身份证审计数据库系统故障评估
国家电网上海灾备项目4 node rac+adg 
       贵州移动crm及客服数据库性能优化项目
       贵州移动crm及客服务数据库sql审核项目
       深圳穆迪软件有限公司数据库性能优化项目

联系方式:
手机:18201115468
qq   :   305076427
qq微博: wisdomone1
新浪微博:wisdomone9
qq群:275813900    
itpub博客名称:wisdomone1    http://blog.itpub.net/9240380/




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-1804152/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
提供针对oracle初学者及进阶的数据库培训,欢迎大家咨询: 微信: wisdomone 微信公众号: lovedb qq: 305076427 微博: wisdomone9

注册时间:2008-04-04

  • 博文量
    2150
  • 访问量
    11876437