欢迎访问机房运维工作室

爱数知识库

AnyBackup-CDM Linux 环境下 Oracle 单机异机挂载恢复失败,提示错误信息:ORA-00845_ MEMORY_TARGET not su

频道:爱数知识库 日期: 浏览:39

AnyBackup-CDM Linux 环境下 Oracle 单机异机挂载恢复失败,提示错误信息:ORA-00845: MEMORY_TARGET not supported on this syst

关键字

ORA-00845

适用产品

  • AnyBackup CDM 7.0.x

问题描述

在 AnyBackup CDM 管理控制台上,执行 Linux 环境下 Oracle 单机异机挂载恢复失败任务执行输出中显示如下错误信息:

连接恢复的目标数据库实例失败,原因:数据库报错 ORA-00845: MEMORY_TARGET not supported on this system。


问题影响

AnyBackup CDM 执行 Oracle 单机异机挂载恢复失败。

问题原因

异机操作系统上 /dev/shm 共享内存文件系统空间小于 Oracle 实例参数文件 MEMORY_TARGET 所配置的内存值。

解决方案

为解决此问题,需要修改异机 MEMORY_TARGET 参数值配置或增加 /dev/shm 共享内存文件大小,请按照以下步骤执行:
方案一,修改 Oracle 挂载恢复对应实例参数 MEMORY_TARGET 的值,使得 MEMORY_TARGET 值小于/dev/shm 共享内存文件大小

1. 在操作系统终端上执行 df -h 命令,查询操作系统 /dev/shm 大小。

2. vi 编辑客户端安装目录 ClientService 下的 oracleEnv.config 配置文件,添加一行 orcl.MemTarget = 3072M

注意:orcl.MemTarget 参数中 orcl 为 Oracle 实例名,具体以挂载恢复任务配置的实例名为准。orcl.MemTarget 参数配置的实际大小应小于步骤1查询到的 /dev/shm 可用容量。

3. 重启客户端服务器的AnyBackupClient服务。
4. 重新执行 AnyBackup CDM 挂载恢复任务。

方案二,增加 /dev/shm 共享内存文件的大小

1.在操作系统上使用 free -m 命令查询主机内存大小和 Swap 分区大小。

2. vi 编辑 /etc/fstab 中 tmpfs 行,设置 tmpfs 的 size 大小。

注意:/dev/shm 值默认为物理内存大小的一半,可以适当调大,但应小于步骤1中查询结果 Mem 与 Swap 大小之和。为了解决问题 /dev/shm 必须大于原备份 Oracle 实例 MEMORY_TARGET 示例中备份的 Oracle 实例 MEMORY_TARGET 大小为8G,且异机操作系统上物理内存大小与 Swap 分区之和为11.6G,故配置 size=8G。具体以实际环境为准。

3.执行如下命令重新挂载 /dev/shm 内存文件系统。

mount -o remount /dev/shm

4. 重新执行 AnyBackup CDM 挂载恢复任务。

更多信息

关于 Ora-00845 内存设置更详细的介绍,请参考 Oracle 官方文档: Troubleshooting Memory Size Error Oracle