Oracle 11gR2 RAC ORA-00845
公司剛上線一套Oracle 11gR2 的RAC。 將MEMORY_TARGET記憶體設定為12G後,啟動的時候報了錯誤:
ORA-00845: MEMORY_TARGET not supported on this system
00845, 00000, "MEMORY_TARGET not supported on this system"
// *Cause: The MEMORY_TARGET parameter was not supported on this operating system or /dev/shm was not sized correctly on Linux.
// *Action: Refer to documentation for a list of supported operating systems. Or, size /dev/shm to be at least the SGA_MAX_SIZE on each Oracle instance running on the system.
在Oracle 11g裡,透過MEMORY_TARGET引數自動管理SGA和PGA。 但是在Oracle 11gR2 裡如果MEMORY_TARGET引數值設定的過大,可能就會出現這個錯誤。
解決方法:增加/dev/shm, /dev/shm通常用做共享記憶體。
/dev/shm是一個臨時檔案系統(tmpfs) 。 從/etc/fstab中mount支援標準的引數"size",可以用size來增加或者減少在/dev/shm上的tmpfs大小.如果沒有設定size,它的大小大於MEMORY_TARGET。
如果想立即生效,方法如下:
# umount tmpfs
# mount -t tmpfs shmfs -o size=14G /dev/shm
讓以後每次重啟OS 都自動mount,修改檔案 /etc/fstab 將tmpfs 修改成以下值:
tmpfs /dev/shm tmpfs defaults,size=14G 0 0
如果直接修改/etc/fstab,透過重啟OS 也可以讓引數生效。
注意:這個size 的大小需要設定為整數。
df -h 在查查修改後的/dev/shm的大小
檔案系統 容量 已用 可用 已用% 掛載點
/dev/mapper/vg00-lv_root
20G 11G 7.7G 59% /
/dev/mapper/vg00-lv_home
97G 6.8G 86G 8% /home
/dev/sda1 97M 13M 80M 14% /boot
tmpfs 14G 0 14G 0% /dev/shm
Oracle 官網的說明:
ORA-00845 When Starting Up An 11g Instance With AMM Configured. [ID 460506.1] |
||
|
||
|
Modified 18-FEB-2010 Type PROBLEM StatusPUBLISHED |
|
In this Document
Symptoms
Applies to:
Oracle Server - Enterprise Edition - Version: 11.1.0.6 to 11.2.0.2.0 - Release: 11.1 to 11.2
Linux x86
Linux x86-64
Symptoms
On a Linux system, trying to start up an 11g instance could fail with the following error:
ORA-845: MEMORY_TARGET not supported on this system
In the alert log, you could or could not see the below messages:
ORA-04031 errors
OR
Starting ORACLE instance (normal)
WARNING: You are trying to use the MEMORY_TARGET feature.
This feature requires the /dev/shm file system to be mounted for at
Least
With available space less than this size.
Please fix this so that MEMORY_TARGET can work as expected.
Current available is
If ORA-04031 is seen in the alert log, sometimes you can not establish new connections due to this problem.
Changes
Installed 11g, or created a new database on 11g and is starting to use the AMM (Automatic Memory Management) feature.
Cause
This feature requires the /dev/shm file system to be mounted for at least %llu bytes.
/dev/shm is either not mounted or is mounted with available space less than this size.
Explanation:
AMM (Automatic Memory Management) is a new feature in 11 which manages both SGA and PGA.
MEMORY_TARGET is used instead of SGA_TARGET and MEMORY_MAX_TARGET is used instead of SGA_MAX_SIZE (defaults to MEMORY_TARGET ).
It uses /dev/shm on Linux. If max_target set over /dev/shm size, you get the error messages.
Solution
1. If you are installing Oracle 11g on a Linux system, note that Memory Size (SGA and PGA), which sets
the initialization parameter MEMORY_TARGET or MEMORY_MAX_TARGET, cannot be greater than the shared memory filesystem (/dev/shm) on your operating system. To resolve the current error, increase the /dev/shm file size. For example:
# mount -t tmpfs shmfs -o size=7g /dev/shm
Also, to make this change persistent across system restarts, add an entry in /etc/fstab similar to the following:
shmfs /dev/shm tmpfs size=7g 0
2. This error may also occur if /dev/shm is not properly mounted. Make sure your df output is similar to the following:
$ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
...
shmfs 6291456 832356 5459100 14% /dev/shm
3. If configuring AMM is not possible due to lack of space on /dev/shm mount point, you can configure ASMM instead of AMM, i.e. set SGA_TARGET, SGA_MAX_SIZE and PGA_AGGREGATE_TARGET instead of MEMORY_TARGET.
HugePages and Oracle Database 11g Automatic Memory Management (AMM) on Linux [ID 749851.1] |
||
|
||
|
Modified 05-NOV-2010 Type BULLETIN StatusPUBLISHED |
|
In this Document
Applies to:
Oracle Server - Enterprise Edition - Version: 11.1.0.6 and later [Release: 11.1 and later ]
Linux OS - Version: 2.6 and later ]
Linux x86
IBM: Linux on System z
IBM: Linux on POWER Systems
IBM S/390 Based Linux (31-bit)
Linux x86-64
Linux Itanium
Purpose
This document discusses the interoperability of the Automatic Memory Management (AMM) feature introduced by Oracle DB 11g and the HugePages (HugeTLB) feature of the Linux OS kernel.
Scope and Application
This document is to be used by Linux system administrators and Oracle database administrators that work with Oracle Database Server 11g on Linux Operating System.
HugePages and Oracle Database 11g Automatic Memory Management (AMM) on Linux
The 11g AMM feature is enabled by the MEMORY_TARGET / MEMORY_MAX_TARGET instance initialization parameters (see for further information). That is also the case with a default database instance created using Database Configuration Assistant (DBCA).
With AMM all SGA memory is allocated by creating files under /dev/shm. When Oracle DB does SGA allocations that way HugePages are not reserved/used. The use of AMM is absolutely incompatible with HugePages.
Please also note that ramfs (instead of tmpfs mount over /dev/shm) is not supported for AMM at all. With AMM the Oracle database needs to grow and reduce the size of SGA dynamically. This is not possible with ramfs where it possible and supported with tmpfs (which is the default for the OS installation).
If you want to use HugePages make sure that both MEMORY_TARGET / MEMORY_MAX_TARGET initialization parameters are disabled (set to 0) for the database instance.(See also Oracle? Database Administrator's Guide 11g)
References
- ORA-00845 When Starting Up An 11g Instance With AMM Configured.
Related Products
Keywords
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23490154/viewspace-1062336/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle RAC 11gR2開啟歸檔Oracle
- ORACLE 11GR2 RAC的網路規劃解析Oracle
- 11gR2 RAC convert ONENODE
- 11gR2 OneNode Convert RAC
- Oracle 11gR2 RAC 單網路卡轉雙網路卡繫結配置Oracle
- Oracle 11gR2 RAC 叢集服務啟動與關閉總結Oracle
- 11gR2 RAC新增節點步驟
- Oracle 11gr2修改RAC叢集的scan ip,並處理ORA-12514問題Oracle
- oracle RACOracle
- Oracle RAC Cache Fusion 系列十七:Oracle RAC DRMOracle
- 一步一步搭建oracle 11gR2 rac+dg之環境準備(二)Oracle
- linux7 靜默安裝 11GR2 RACLinux
- Oracle 11GR2 Duplicate from BackupOracle
- Oracle 11.2 DataGuard RAC To RAC搭建Oracle
- Oracle RAC CacheFusion 系列十五:Oracle RAC CRServer Part TwoOracleServer
- ORACLE RAC clusterwareOracle
- Oracle RAC Cache Fusion系列十八:Oracle RAC Statisticsand Wait EventsOracleAI
- Solaris 10.5 安裝Oracle 11gR2Oracle
- Oracle RAC Cache Fusion 系列十四:Oracle RAC CR Server Part OneOracleServer
- Oracle RAC Cache Fusion 系列十:Oracle RAC Enqueues And Lock Part 1OracleENQ
- 【RAC】Oracle RAC如何修改心跳網路Oracle
- oracle rac 增加磁碟Oracle
- Oracle RAC Wait EventsOracleAI
- 【RAC】Oracle rac 如何修改公網及vipOracle
- Oracle RAC Cache Fusion 系列九:Oracle RAC 分散式資源管理(二)Oracle分散式
- Oracle RAC Cache Fusion 系列八:Oracle RAC 分散式資源管理(一)Oracle分散式
- Oracle RAC更新補丁Oracle
- Oracle RAC新增節點Oracle
- 4.2.1.12 規劃 Oracle RACOracle
- Oracle RAC自啟動Oracle
- Oracle:RAC 程式簡介Oracle
- Networker備份oracle racOracle
- Oracle RAC+DG搭建Oracle
- G003-ORACLE-INS-RAC-01 ORACLE 19C RAC Ins ON OEL 7.8Oracle
- 【BUILD_ORACLE】Oracle 19c RAC搭建(六)建立RAC資料庫UIOracle資料庫
- Oracle 11gR2 ASM例項記憶體管理OracleASM記憶體
- 【RAC】Oracle RAC上線測試場景介紹Oracle
- Oracle RAC一鍵部署004(RAC引數校驗)Oracle
- oracle RAC手動配置互信Oracle