返回顶部
首页 > 资讯 > 错误编码 >ORA-00842: DB_BLOCK_BUFFERS cannot be set with SGA_TARGET or MEMORY_TARGET ORACLE 报错 故障修复 远程处理
  • 931
分享到

ORA-00842: DB_BLOCK_BUFFERS cannot be set with SGA_TARGET or MEMORY_TARGET ORACLE 报错 故障修复 远程处理

报错故障DB_BLOCK_BUFFERS 2023-11-04 23:11:42 931人浏览 泡泡鱼
摘要

文档解释 ORA-00842: DB_BLOCK_BUFFERS cannot be set with SGA_TARGET or MEMORY_TARGET Cause: DB_BLOCK_BUFFERS was incompatible

文档解释

ORA-00842: DB_BLOCK_BUFFERS cannot be set with SGA_TARGET or MEMORY_TARGET

Cause: DB_BLOCK_BUFFERS was incompatible with SGA_TARGET and MEMORY_TARGET.

Action: Remove the incompatible parameter setting.

ORA-00842错误表明您正在尝试在 MEMORY_TARGET 或 SGA_TARGET 配置参数的环境中,将 DB_BLOCK_BUFFERS 设置到不合法的值 (注意: MEMORY_TARGET 和 SGA_TARGET 是 oracle 11g 之后出现的新参数)。

官方解释

当一个受 MEMORY_TARGET 或 SGA_TARGET 参数控制的数据库实例初始化或重新启动时,Oracle会尝试基于提供的值来检查 DB_BLOCK_BUFFERS 参数。如果 DB_BLOCK_BUFFERS 被设置成不合法的值,就会出现ORA-00842错误。

在此情况下,您需要更改 DB_BLOCK_BUFFERS 参数值,从而将其与 MEMORY_TARGET 和 SGA_TARGET 相符,才能正确实例化 Oracle 数据库

常见案例

– 您对 Oracle 数据库实例进行重新初始化时,出现ORA-00842错误

– 您尝试数据库实例启动时,报出ORA-00842错误

正常处理方法及步骤

1.首先确认您是否正在运行 MEMORY_TARGET 或 SGA_TARGET 参数:

SELECT name,value

FROM v$parameter

WHERE name IN (‘MEMORY_TARGET’,’SGA_TARGET’);

2.从输出结果中,检查哪一个参数正在使用,并根据下列对应情况调整 DB_BLOCK_BUFFERS 值:

a.如果 MEMORY_TARGET 被指定,请将 DB_BLOCK_BUFFERS 设定成 0 (零)

b.如果 SGA_TARGET 被指定,请将 DB_BLOCK_BUFFERS 的值设定为 “(大内存池总大小-非大内存池总大小)/ 数据库块

3.如果你在生产环境中,最好以 SPFILE 方式保存数据库参数值

ALTER SYSTEM SET DB_BLOCK_BUFFERS= SCOPE=SPFILE;

4.重新启动数据库,使参数配置生效

SHUTDOWN IMMEDIATE;

STARTUP;

--结束END--

本文标题: ORA-00842: DB_BLOCK_BUFFERS cannot be set with SGA_TARGET or MEMORY_TARGET ORACLE 报错 故障修复 远程处理

本文链接: https://lsjlt.com/news/526694.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作