千家信息网

在Oracle11g RAC环境下如何处理ORA-00845错误

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章主要为大家展示了"在Oracle11g RAC环境下如何处理ORA-00845错误",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"在Oracle11
千家信息网最后更新 2025年02月03日在Oracle11g RAC环境下如何处理ORA-00845错误

这篇文章主要为大家展示了"在Oracle11g RAC环境下如何处理ORA-00845错误",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"在Oracle11g RAC环境下如何处理ORA-00845错误"这篇文章吧。

因机房空调停电原因机房温度过高而导致两个节点的Oracle11G RAC数据库服务器自动关机。等启动服务器后,发现数据库起不来,如题如下:

[oracle@DB-2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:35:31 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup

ORA-00845: MEMORY_TARGET not supported on this system

SQL> exit

原因为初始化参数MEMORY_TARGET或MEMORY_MAX_TARGET不能大于共享内存(/dev/shm),为了解决这个问题,要不调整Oracle初始化参数要不调大/dev/shm。

Oracle原来参数文件相关参数文件如下:

orcl2.memory_max_target=68719476736

orcl1.memory_max_target=68719476736

*.memory_target=30558650368

orcl2.memory_target=68719476736

orcl1.memory_target=6871947673

操作系统的共享内存(/dev/shm)参数如下:

[oracle@DB-1 shm]$ cat /etc/fstab | grep tmpfs

tmpfs /dev/shm tmpfs defaults,size=131072M 0 0

通过vi /etc/fstab命令分别修改两个节点的size为64G,如下:

tmpfs /dev/shm tmpfs defaults,size=64G 0 0

[oracle@CRXJ-DB-1 ~]$ df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/vg_crxjdb1-LogVol02

2.3T 1.3T 882G 60% /

tmpfs 64G 34G 30G 54% /dev/shm

/dev/sda1 194M 33M 152M 18% /boot

/dev/mapper/vg_crxjdb1-LogVol01

9.9G 151M 9.2G 2% /tmp

重新尝试启动数据库,还是报ORA-00845错误,因此对将初始化参数文件spfile导出成pfile后进行编辑并重新生成spfile,过程如下:

[oracle@DB-1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:36:33 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> create spfile from pfile='/home/oracle/pfile_yu.ora';

File created.

Elapsed: 00:00:00.21

编辑相关内容如下:

orcl2.memory_max_target=64424509440

orcl1.memory_max_target=64424509440

*.memory_target=64424509440

orcl2.memory_target=64424509440

orcl1.memory_target=64424509440

重新生成spfile并启动数据库:

SQL> create spfile from pfile='/home/oracle/pfile_yu.ora';

File created.

Elapsed: 00:00:00.18

SQL> exit

Disconnected

[oracle@DB-1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:40:30 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 6.4137E+10 bytes

Fixed Size 2219552 bytes

Variable Size 3.8118E+10 bytes

Database Buffers 2.5770E+10 bytes

Redo Buffers 247029760 bytes

Database mounted.

Database opened.

SQL>

数据库启动成功。

在另一个节点也进行类似操作,两个节点数据库都正常启动并运行,应用能正常访问了。

注:在节点一生成完spfile后,在节点二上企图启动数据库,但还是报错:

[oracle@DB-2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:35:31 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup

ORA-00845: MEMORY_TARGET not supported on this system

查看操作系统信息:

[oracle@DB-2 ~]$ df -h|grep shm

tmpfs 64G 397M 63G 1% /dev/shm

[oracle@DB-2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:46:28 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> create pfile='/home/oracle/pfile_yu.ora' from spfile;

create pfile='/home/oracle/pfile_yu.ora' from spfile

*

ERROR at line 1:

ORA-01565: error in identifying file '?/dbs/spfile@.ora'

ORA-27037: unable to obtain file status

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

对于以上问题,从节点一把参数文件复制过来后直接生成spfile

[oracle@DB-1 ~]$ scp pfile_yu.ora DB-2:/home/oracle/pfile_yu.ora 100% 1929 1.9KB/s 00:00

[oracle@DB-2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 2 10:54:48 2017

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> create spfile from pfile='/home/oracle/pfile_yu.ora';

File created.

SQL> startup

ORACLE instance started.

Total System Global Area 6.4137E+10 bytes

Fixed Size 2219552 bytes

Variable Size 3.3554E+10 bytes

Database Buffers 3.0333E+10 bytes

Redo Buffers 247029760 bytes

Database mounted.

Database opened.

SQL> exit

以上是"在Oracle11g RAC环境下如何处理ORA-00845错误"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

参数 数据 数据库 节点 错误 内容 文件 环境 两个 篇文章 生成 操作系统 内存 原因 服务器 机房 系统 要不 还是 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 字节跳动的服务器图片 互联网数据库技术专业 黑犇互联网科技有限公司 网络安全金融宣传 迈集软件开发 华东交大计算机网络技术期末考试 linux服务器开源工具 入数据库数据格式要求吗 傻瓜进销存软件使用的数据库 网络安全对保密工作的心得体会 我的世界网易版手机服务器监狱 新泰oa办公软件开发公司有哪些 全球智能网络技术大会 永兴安卓软件开发在哪学 软件开发劳务派遣能长期干吗 电子网络技术靠谱吗 网络安全0基础免费 广州光纤网络技术开发价格多少 计算机网络技术考试方面 关于网络技术描述不正确的 mqtt服务器响应变慢 学习网络技术应什么顺序 电子网络技术发展前景怎样 浪潮森雅网络技术有限公司 软件开发属于五行中的什么 广州农行软件开发工资 什么D数据库 软件开发自学成才 数据库掌握技术 会计软件开发创新服务
0