ORA-39050: parameter _log_private_parallelism is incompatible with parameter _redo_read_from_memory

本文介绍了解决Oracle数据库启动时遇到的ORA-39050错误的方法,该错误源于_log_private_parallelism与_redo_read_from_memory两个参数设置不兼容。通过调整参数设置,成功解决了这一问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ORA 39050 ERROR

    启动数据出现ORA-39050: parameter _log_private_parallelism is incompatible with parameter _redo_read_from_memory错误:

       查看报错详情:

SYS@orcl#startup
ORA-39050: parameter _log_private_parallelism is incompatible with parameter _redo_read_from_memory
SYS@orcl#      
oracle@oracle:~> oerr ORA 39050
39050, 00000, "parameter %s is incompatible with parameter %s"
// *Cause:  Two parameters were set that were incompatible with each other.
//          Only the first parameter setting will be used.
// *Action: Decide which parameter is to be used and stick to it.
oracle@oracle:~> 
 

  首先手动创建pfile文件,并写入如下内容,后读取的参数将覆盖前面设置的参数。

  

spfile='/opt/oracle/product/10.2/db_1/dbs/spfileorcl.ora'
_log_private_parallelism=false
SYS@orcl#startup pfile='/opt/oracle/pfile.ora';
ORACLE 例程已经启动。

Total System Global Area  805875712 bytes
Fixed Size                  2148720 bytes
Variable Size             574621328 bytes
Database Buffers          222298112 bytes
Redo Buffers                6807552 bytes
数据库装载完毕。
数据库已经打开。
SYS@orcl#

 

 然后修改参数,并创建spfile;

查看隐含参数内容:

SYS@orcl#@getsp.sql
输入 par 的值:  _log_pri
原值    2: where x.indx=y.indx and x.ksppinm like '%&par%'
新值    2: where x.indx=y.indx and x.ksppinm like '%_log_pri%'

NAME                           VALUE                PDESC
------------------------------ -------------------- --------------------------------------------------
_log_private_parallelism       FALSE                Number of private log buffer strands for zero-copy
                                                     redo

_log_private_parallelism_mul   10                   Active sessions multiplier to deduce number of pri
                                                    vate strands

_log_private_mul               5                    Private strand multiplier for log space preallocat
                                                    ion


SYS@orcl#@getsp.sql
输入 par 的值:  _redo_read
原值    2: where x.indx=y.indx and x.ksppinm like '%&par%'
新值    2: where x.indx=y.indx and x.ksppinm like '%_redo_read%'

NAME                           VALUE                PDESC
------------------------------ -------------------- --------------------------------------------------
_redo_read_from_memory         TRUE                 Enable reading redo from memory

SYS@orcl#

修改参数:

    

SYS@orcl#alter system set "_log_private_parallelism"=false;

系统已更改。


重新启动数据测试:

 

SYS@orcl#shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SYS@orcl#startup
ORACLE 例程已经启动。

Total System Global Area  805875712 bytes
Fixed Size                  2148720 bytes
Variable Size             549455504 bytes
Database Buffers          247463936 bytes
Redo Buffers                6807552 bytes
数据库装载完毕。
数据库已经打开。
SYS@orcl#

问题分析:

 _log_private_parallelism

http://www.itpub.net/forum.php?mod=viewthread&action=printable&tid=1332575 

 

Parameter Name:_redo_read_from_memory
Description:Enable reading redo from memory                                                                                                                                                                                                                               
Type:BOOL                                            Obsoleted:FALSE
Can ALTER SESSION:FALSE   Can ALTER SYSTEM:FALSE

 

 注:关于这两个参数的讨论,将在ORACLE 之 REDO篇幅中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值