亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Oracle數(shù)據(jù)庫查看與修改內(nèi)存配置的方法

 更新時間:2023年11月21日 16:01:43   作者:GottdesKrieges  
在使用Oracle時我們需要關(guān)注數(shù)據(jù)庫的內(nèi)存使用情況,以確保其正確高效地運行,下面這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫查看與修改內(nèi)存配置的相關(guān)資料,需要的朋友可以參考下

Oracle內(nèi)存管理模式

Oracle數(shù)據(jù)庫的內(nèi)存管理模式從自動管理化程度由高到低依次可以分為:

  • 自動內(nèi)存管理:完全由Oracle自動管理內(nèi)存分配。DBA只需設(shè)置MEMORY_TARGET(以及可選初始化參數(shù)MEMORY_MAX_TARGET),Oracle就會在SGA和PGA之間自動分配內(nèi)存。
  • 自動共享內(nèi)存管理:DBA只需設(shè)置SGA_TARGETPGA_AGGREGATE_TARGET兩個初始化參數(shù)。Oracle會分別在SGA和PGA中自動分配各組件的內(nèi)存。
  • 手動內(nèi)存管理:由DBA為SGA和PGA中的所有組件逐一手動分配內(nèi)存。

在自動共享內(nèi)存管理模式下,還可以手動為SGA中的某些重要組件指定最小的內(nèi)存分配值,例如Shared Pool和Buffer Cache。

查看Oracle內(nèi)存分配

檢查各內(nèi)存參數(shù)的TARGET配置:

SQL> show parameter target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
memory_max_target                    big integer 0
memory_target                        big integer 0
pga_aggregate_target                 big integer 1561M
sga_target                           big integer 4688M

其中,memory_targetmemory_max_target都為0,并且sga_targetpga_aggregate_target不為0,表示當(dāng)前數(shù)據(jù)庫使用的是自動共享內(nèi)存管理模式。

檢查SGA和PGA相關(guān)參數(shù)的配置:

SQL> show parameter sga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 4688M
sga_min_size                         big integer 0
sga_target                           big integer 4688M

SQL> show parameter pga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit                  big integer 3122M
pga_aggregate_target                 big integer 1561M

查看SGA中各組件的內(nèi)存使用情況:

SQL> select * from v$sgainfo;

NAME                                  BYTES RESIZEABLE     CON_ID
-------------------------------- ---------- ---------- ----------
Fixed SGA Size                      8906552 No                  0
Redo Buffers                        7868416 No                  0
Buffer Cache Size                3992977408 Yes                 0
In-Memory Area Size                       0 No                  0
Shared Pool Size                  872415232 Yes                 0
Large Pool Size                    33554432 Yes                 0
Java Pool Size                            0 Yes                 0
Streams Pool Size                         0 Yes                 0
Shared IO Pool Size               134217728 Yes                 0
Data Transfer Cache Size                  0 Yes                 0
Granule Size                       16777216 No                  0

NAME                                  BYTES RESIZEABLE     CON_ID
-------------------------------- ---------- ---------- ----------
Maximum SGA Size                 4915722040 No                  0
Startup overhead in Shared Pool   405891224 No                  0
Free SGA Memory Available                 0                     0

14 rows selected.

其中,Buffer Cache SizeShared Pool Size是需要重點關(guān)注的內(nèi)容。

修改Oracle內(nèi)存分配

如果我們升級了服務(wù)器物理內(nèi)存配置,就需要對Oracle的內(nèi)存參數(shù)進行修改。

在自動共享內(nèi)存管理模式下,一般按照如下原則配置內(nèi)存:

  • SGA_TARGET一般配置為物理內(nèi)存的30%到70%之間;
  • PGA_AGGREGATE_TARGET一般配置為物理內(nèi)存的5%到25%之間;
  • SGA_TARGETPGA_AGGREGATE_TARGET之和不要超過物理內(nèi)存的80%;
  • Buffer Cache Size一般配置為SGA_TARGET的 20% 左右;
  • Shared Pool Size一般配置為SGA_TARGET的 10% 左右。

修改數(shù)據(jù)庫內(nèi)存配置:

--備份參數(shù)文件
create pfile='/home/oracle/pfile.ora' from spfile;

--禁用自動內(nèi)存管理
alter system set memory_target=0M scope=spfile;

--設(shè)置SGA_TARGET
alter system set sga_max_size=9G scope=spfile;
alter system set sga_target=9G scope=spfile;

--設(shè)置Buffer cache、共享池、Java池的最小值
alter system set db_cache_size=2G scope=spfile;
alter system set shared_pool_size=1G scope=spfile;
alter system set java_pool_size=128m scope=spfile;

--設(shè)置PGA_AGGREGATE_TARGET
alter system set pga_aggregate_target=1G scope=spfile;

然后重啟數(shù)據(jù)庫即可生效。

SQL> show parameter sga_target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_target                           big integer 9G

SQL> show parameter pga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit                  big integer 3000M
pga_aggregate_target                 big integer 1G

SQL> show parameter db_cache_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_size                        big integer 2G

SQL> show parameter shared_pool_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size                     big integer 1G

SQL> show parameter java_pool_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
java_pool_size                       big integer 128M

需要注意的是,服務(wù)器物理內(nèi)存變化通常還涉及內(nèi)核參數(shù)kernel.shmallkernel.shmmax的調(diào)優(yōu)。如果數(shù)據(jù)庫使用了大頁,還需要調(diào)優(yōu)操作系統(tǒng)的大頁配置。

# 查看是否開啟大頁
SQL> show parameter use_large_pages

# 查看操作系統(tǒng)大頁配置
cat /proc/meminfo | grep HugePage
cat /proc/meminfo | grep Hugepagesize

總結(jié) 

到此這篇關(guān)于Oracle數(shù)據(jù)庫查看與修改內(nèi)存配置的文章就介紹到這了,更多相關(guān)Oracle查看修改內(nèi)存配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論