这篇博客主要在生产环境下如何修改RAC下面的参数的步骤,过程和单实例有一点区别。

DB_FILES 定义了oracle数据中数据文件的个数,当数据文件个数超过这个参数设定的值就会报ORA-00059这个错误。 

解决办法: 


show parameter db_files;   --查看当前设置的值

sqlplus / as sysdba 

alter system set db_files=更大的值 scope=spfile; 

shutdown immediate; 

startup; 


说明:

这个参数设置的值的大小不会影响效率,只是单纯的控制数据文件的个数 

RAC生产环境下面修改该参数步骤如下: 

(1)先在任意一个节点查看该参数值 

SQL> show parameter db_files; 


NAME      TYPE  VALUE

------------------------------------ ----------- ------------------------------ 


db_files      integer  200


在任意一个节点执行,这里sid=’*’是指在所有实例上生效


SQL> alter system set db_files=350 scope=spfile sid='*';


将所有节点上将监听全部停了


[grid@RAC1 ~]$ srvctl stop listener

[grid@RAC1 ~]$ srvctl status listener 

Listener LISTENER is enabled 

Listener LISTENER is not running 

在所有节点上执行Kill LOCAL=NO进程 

Kill所有的外部链接 


ps –ef|grep LOCAL=NO|grep –v grep|awk '{print $2}'|xargs kill -9


(5)在所有节点上执行

郑州不孕不育医院:http://jbk.39.net/yiyuanzaixian/zztjyy/

SQL> shutdown immediate;

Database closed. 

Database dismounted. 

ORACLE instance shut down. 


(6)按照顺序将库启动,不要在一个库未启动完成的时候去启动另外一个库,否则会出现下面错误


ORA-01105: mount is incompatible with mounts by other instances 

ORA-01174: DB_FILES is 350 buts needs to be 320 to be compatible