1. 程式人生 > >記憶體引數調整,報ORA-00845錯誤

記憶體引數調整,報ORA-00845錯誤

作業系統環境:linux 7.2

資料庫版本:Oracle  11.2.0.4

資料庫框架:單例項

資料儲存形式:本地檔案系統

過程描述:虛擬機器增大實體記憶體,資料庫相應的調整 sga , pga 大小。

Oracle 11g 調整PAG,SGA的方式有兩種

第一種:

記憶體管理為AMM(automatic memory management),調整memory_target,memory_max_target兩個值的大小即可,且  memory_targe<=memory_max_target

            修改命令:

            alter system set memory_target=待調整的數值 scope=spfile;

            alter system set memory_max_target=待調整的數值 scope=spfile;

            改好後要重啟資料庫;

第二種:

記憶體管理為ASMM(auto shared memory management ),調整SGA,PGA的大小,

             修改命令:

              alter system set sga_max_size=待調整的數值 scope=spfile;

              alter system set sga_target=待調整的數值 scope=spfile;

              alter system set pga=target=待調整的數值 scope=spfile;

              修改完重啟資料庫;

如出現 :

ORA-00845: MEMORY_TARGET not supported on this system

解決辦法

需要增加系統分割槽tmpfs    的空間。

[[email protected] ~]# df -lh

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              14G   11G 2.4G  83% /

tmpfs                 978M   88K 978M   1% /dev/shm

/dev/sda1             194M   46M 139M  25% /boot

--這裡可以看到tmpfs 只有978M。 這個引數我在安裝DB的時候已經修改過:

[[email protected] ~]# cat /etc/fstab

UUID=b1d2de8e-de31-4deb-b4e8-755c0ed01616/                       ext4    defaults        1 1

UUID=4df5aa5f-8ef0-473a-931a-51d11e21aa53/boot                   ext4    defaults        1 2

UUID=82085104-5021-4aaf-8e85-f213998107b6swap                    swap    defaults        0 0

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

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                   /sys                    sysfs   defaults        0 0

proc                    /proc                   proc    defaults        0 0

--只是這裡的配置在啟動的時未生效

--把tmpfs 重新mount 一下:

[[email protected] ~]# umount /dev/shm

umount: /dev/shm: device is busy.

       (In some cases useful info about processes that use

        the device is found by lsof(8) or fuser(1))

--裝置忙,用fuser處理一下:

[[email protected] ~]# fuser -km /dev/shm

/dev/shm:             1805m

[[email protected] ~]# umount /dev/shm

[[email protected] ~]# mount /dev/shm

[[email protected] ~]# df -lh

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              14G   11G 2.4G  83% /

/dev/sda1             194M   46M 139M  25% /boot

tmpfs                 16.0G     0 16.0G   0% /dev/shm

--現在已經正常了。


*另 調整sga,pga後還需要調整/etc/sysctl.config下面的kernel.shmmax,取值大於sga_max_size即可,可以取“實體記憶體-1bytes”,例:實體記憶體為12G   可取:12x1024x1024x1024-1=12884901887

相關推薦

記憶體引數調整ORA-00845錯誤

作業系統環境:linux 7.2 資料庫版本:Oracle  11.2.0.4 資料庫框架:單例項 資料儲存形式:本地檔案系統 過程描述:虛擬機器增大實體記憶體,資料庫相應的調整 sga , pga 大小。 Oracle 11g 調整PAG,SGA的方式有兩種 第一種: 記

ORACLE 12c 設定完inmemory_size引數ORA-04031錯誤

環境: Redhat LINUX 6U5 64位+ORACLE 12.1.2.0 64位 描述: 安裝了臺測試庫12.1.2.0 , 記憶體256GB,設定資料庫memory_max_target、memory_target、sga_max_size 引數是 236GB,在

【問題記錄】資料庫打不開 ORA-00845錯誤 /dev/shm設定過小

[[email protected] ~]# cat /etc/fstab | grep tmpfs tmpfs                   /dev/shm                tmpfs   defaults        0 0 [[email protecte

訪問Weblogic中部署的ADF應用時ORA-01005錯誤

今天在將Oracle Summit Demo 部署到獨立的Weblogic中時,一直報ORA-01005異常;在Integrated Weblogic中執行則是一直正常。 主要異常Log如下: ####<Apr 29, 2013 3:16:40 PM CST>

Oracle11.2.0.1.0叢集資料庫不能正常啟動ORA-01078,ORA-01565,ORA-17503,ORA-12547錯誤

[[email protected] ~]$ crs_stat -t Name           Type           Target    State     Host         ----------------------------------------------------

Oracle中sum函式和case when聯合使用ORA-00923: 未找到要求的 FROM 關鍵字”錯誤

在做行轉列的時候,一直報“ORA-00923: 未找到要求的 FROM 關鍵字”,找了好久的錯,現記錄下來以便以後檢視。需求是這樣的:按系(系名)分段統計(成績小於 60 分,60-85 分, 85 分以上)“大學物理”課程各分數段的學生人數,及各系學生的平均成績。附上出錯時

Navicat Premium連線Oracle資料庫時ORA-12541: TNS無監聽程式錯誤

一般這種問題大多數是由於修改了資料庫所在伺服器名稱所導致的。 解決步驟如下: 1、在oracle安裝目錄下查詢listener.ora和tnsnames.ora這兩個檔案,然後用記事本開啟。 2、將HOST改為機器名(即計算機名),注意如果有標題所示的問題,經常改為

Linux環境下使用sqlplus登入Oracle'ORA-12547: TNS:lost contact’丟失連線錯誤

問題描述: 1、在oracle資料庫裡新建了DDS(用於資料庫同步)使用者,但在Linux環境裡通過sqlplus命令列,使用DDS使用者登入oracle,報'ORA-12547: TNS:lost contact’丟失連線錯誤。 2、在windows環境使用PLSQL d

oracle數據庫ORA-01033錯誤

數據庫服務 oracle system Oracle登錄 ORA-01033: ORACLE正在初始化或關閉的解決辦法2015-03-16 01:20 | 160511人閱讀 | 來源Oracle登錄 ORA-01033: ORACLE正在初始化或關閉的解決方法 Oracle存在多實例 相應的在D

Informatica跑ETL時出現ora-26002錯誤

ora- 插入 com info type 技術 images 批量 不支持 用Informatica跑ETL時,出現ora-26002錯誤。使用BULK時會報這個錯誤,因為是大批量insert插入所以很多normal insert時該完成的任務沒完成,例如表上有索引時。而

在oracle11g中刪除sde用戶ora - 21700錯誤的解決方法

11.2.0.1 pos all with username user 刪除 sel cat PS C:\Users\Administrator> sqlplus sys/xxxx@orcl as sysdba;SQL*Plus: Release 11.2.0.1.0

OPEN RESETLOGS ORA-00392 ORA-00312 in Oracle12c

ORA-00392 ;ORA-0031【現象】SQL> alter database open resetlogs;alter database open resetlogs*ERROR at line 1:ORA-00392: log 4 of thread 1 is being cleared, o

plsqlora-00911錯誤的解決

ima 但是 utf-8 rri image 其他 安裝包 lang parameter 論不作死就不會死的過程,樓主之前因為得了一個oralce9i的精簡版的客戶端安裝包,我也分享過給其他人使用這個安裝包,沒聽人反饋過說有問題,所以這次換了電腦後果斷就安裝這個客戶端。然後

python用requests請求SSL:CERTIFICATE_VERIFY_FAILED錯誤

requests模組之前一直正常的,某一天開始對https的請求都拋錯誤了: requests.exceptions.SSLError: [Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:cer

java專案執行中出現記憶體洩漏問題java.lang.OutOfMemoryError: PermGen space

一開始我以為是記憶體不足導致的,但是檢視伺服器記憶體還有很多。所以不是記憶體問題。 然後查到java執行時涉及到資源分配的幾個重要引數: Xss:每個執行緒的stack大小(棧) Xmx:JAVA HEAP的最大值、預設為實體記憶體的1/4 Xms:JAVA HE

JVM堆記憶體引數優化讓效能飛起來

JVM堆記憶體引數優化,讓效能飛起來 堆記憶體是Java程序的重要組成部分,幾乎所有與應用相關的記憶體空間都和堆有關。現在主要介紹與堆記憶體相關的引數設定,這些引數對Java虛擬機器中非常重要的,也是對程式效能有著重要的影響。讓你徹底脫離OOM記憶體溢位等等帶來

mybatis批量分批次插入oracle資料庫ORA-01745: 無效的主機/繫結變數名...

方法一:迴圈呼叫插入單條記錄的方法,效率真心讓人捉急 (3萬條資料,快三分鐘)     public int saveGwghidlist1(List<Gwghid> list) {                  int xh=0;         dele

【SQL】兩個帶order by查詢進行union allORA-00933錯誤的解決方法

在oracle SQL中,要求order by是select語句的最後一個語句,而且一個select語句中只允許出現一個order by語句,而且order by必須位於整個select語句的最後。 當時是要將一個十分複雜的檢索明細查詢和一個十分複雜的檢索彙總查詢的結果

Spring AOP操作action時無法注入空指標錯誤

Spring AOP操作action時無法注入,報NullPointer異常當使用Spring AOP對action層進行操作時,會出現注入失敗的問題,出現空指標異常。原因是一般struts2+spring應用中,spring的外掛只負責為action的ioc部分,但並沒有

Microsoft office2016(專業增強版) 安裝錯誤CRT(KB2999226)錯誤詳細解決方法

這個問題,實際上是跟Window Update這個服務有關。 首先右擊開啟“計算機”下面的管理屬性,點選服務,如下截圖 在"服務"中找到名稱為“Windows Update”服務,點選“停止” 然後重新啟動電腦