052-013題解析

pxbibm發表於2014-03-31
 

13.

You have executed this command to change the size of the database buffer cache:

SQL> ALTER SYSTEM SET DB_CACHE_SIZE=2516582;

System altered.

To verify the change in size, you executed this command:

SQL> SHOW PARAMETER DB_CACHE_SIZE

NAME TYPE VALUE

------------------- ----------- ------------------

db_cache_size big integer 4194304 4M

Why is the value set to 4194304 and not to 2516582?

A.because 4194304 is the granule size

B.because 4194304 is the standard block size

C.because 4194304 is the largest nonstandard block size defined in the database

D.because 4194304 is the total size of data already available in the database buffer cache

Answer: A

答案解析:

本題考得是最小記憶體管理的顆粒度。
我們可以查詢動態系能檢視表V$SGAINFO獲取最小記憶體管理的顆粒度。


如果指定的size不是granule size的整數倍,則rounds到整數倍,例如,如果granule size4M,指定DB_CACHE_SIZE as 10 MB,不是4的整數倍,則實際上DB_CACHE_SIZE as 12M


SQL> select * from v$sgainfo;

NAME                                  BYTES RES
-------------------------------- ---------- ---
Fixed SGA Size                      1339740 No
Redo Buffers                        5160960 No
Buffer Cache Size                 213909504 Yes
Shared Pool Size                  314572800 Yes
Large Pool Size                     4194304 Yes
Java Pool Size                      4194304 Yes
Streams Pool Size                         0 Yes
Shared IO Pool Size                       0 Yes
Granule Size                        4194304 No
Maximum SGA Size                  836976640 No
Startup overhead in Shared Pool    58720256 No

NAME                                  BYTES RES
-------------------------------- ---------- ---
Free SGA Memory Available         293601280

12 rows selected.



 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12798004/viewspace-1133306/,如需轉載,請註明出處,否則將追究法律責任。