11g DataGaurd 修改了参数,然后create pfile='/.initorac.ora' from spfile='$ORACLE_HOME/dbs/spfileorac1.ora',查看创建的pfile发现里面没有修改的参数。
alter system set log_archive_config='DG_CONFIG=(orac1,orcladg)';
alter system set LOG_ARCHIVE_DEST_1='LOCATION=/db/app/oracle/oraarch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orac1';
alter system set log_archive_dest_2='service="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS =(PROTOCOL=TCP)(HOST=xxxxxx)(PORT =1521)))(CONNECT_DATA=(SERVICE_NAME = orcladg)))" LGWR ASYNC VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE) DB_UNIQUE_NAME=orcladg';
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE;
alter system set STANDBY_FILE_MANAGEMENT=AUTO;
看了一下数据库启动的时候用的是pfile,是这个原因吗,但是看了下initORAC1.ora这个文件也没有修改的参数也没有保存下来。
是找的文件不对,还是其他什么问题,大家帮忙解答一下
“Devil组”引证GPT后的撰写:
在这种情况下,有可能是因为创建pfile的方式不正确。可以尝试使用以下命令来创建pfile,确保它包含所有修改:
create pfile='/path/to/pfile' from spfile;
这将使用当前的spfile来创建一个pfile,其中包含所有已修改的参数。
如果修改仍未出现在pfile中,那么可能是修改参数的方式不正确。可以尝试使用以下命令来修改参数,并确保它们已正确保存:
alter system set parameter_name='parameter_value' scope=both;
其中 parameter_name 是您要修改的参数的名称, parameter_value 是要为其设置的新值。 scope=both 意味着该参数将被设置为实例级别和SPFILE级别。
最后,请确保使用正确的pfile或spfile来启动您的数据库。可以使用以下命令来检查当前正在使用的文件:
show parameter spfile;
如果它返回的是一个文件路径,则表示数据库正在使用spfile。如果它返回的是一个字符串“PFILE”,则表示数据库正在使用pfile。