[每日一题] 11gOCP 1z0-052 :2013-09-23 Oracle11g 内存参数设置
[每日一题] 11gOCP 1z0-052 :2013-09-23 Oracle11g 内存参数设置
正确答案:CD(题库给出的答案是AD,大家要相信自己,有些答案是错的!一切以实战为依据)
一、我们先来看Oracle 11g内存架构图,来自OCP教材:
二、内存参数的一些关系:
memory_max_target、 memory_target、sga_max_size、sga_target、pga_aggregate_target
1、 sga_target=0 ,pga_aggregate_target=0 -〉完全自动管理,SGA=memory_target*60% PGA=memory_target*40%
2、 sga_target=600(最小值) ,pga_aggregate_target=200(最小值) -〉memory_target=sga_target+pga_aggregate_target
3、 sga_target=600,pga_aggregate_target=0 -〉pga_aggregate_target=memory_target-sga_target
4、 sga_target=0,pga_aggregate_target=200 -〉sga_target=memory_target-pga_aggregate_target
了解了内存的基本知识后,我们一起来解题:
答案A,不正确
根据题意,我们来实验一把:
1、设置参数
[html]
sys@OCM> alter system set memory_max_target=0 scope=spfile;
System altered.
sys@OCM> alter system set memory_target=804M;
System altered.
sys@OCM> alter system set pga_aggregate_target=90M;
System altered.
sys@OCM> alter system set sga_target=270M;
System altered.
2、重启数据库,报错如下
[html]
sys@OCM> startup force;
ORA-00837: Specified value of MEMORY_TARGET greater than MEMORY_MAX_TARGET
sys@OCM> show parameter mem
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 148 Serial number: 493
3、 从spfile创建出一个pfile
[html]
sys@OCM> create pfile='/tmp/pfile.ora' from spfile;
ERROR:
OCI-21710: argument is expecting a valid memory address of an object
File created.
4、 查pfile中memory_max_target的值,结果看到:
[html]
[root@mydb tmp]# more /temp/pfile.ora
ocm.__db_cache_size=343932928
ocm.__java_pool_size=4194304
ocm.__large_pool_size=4194304
ocm.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
ocm.__pga_aggregate_target=159383552
ocm.__sga_target=683671552
ocm.__shared_io_pool_size=0
ocm.__shared_pool_size=314572800
ocm.__streams_pool_size=4194304
*.audit_file_dest='/u01/app/oracle/admin/ocm/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/u01/app/oracle/oradata/ocm/control01.ctl','/u01/app/oracle/oradata/ocm/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='ocm'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=ocmXDB)'
*.log_archive_dest_1='location=/arch'
*.memory_max_target=0
*.memory_target=842006528
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_tablespace='UNDOTBS1'
从上面的参数可以看出memory_max_target=0,还没有自动变为804M,所以不正确。实际上memory_max_target是控制memory_target的值不能超过它。
答案B,不正确,我们从上面的参数可以看出:pga_aggregate_target=94371840和sga_target=285212672,而并非为0
答案C,正确,从下面的参数可以看出.memory_max_target=0,除非手功改变
答案D,正确,上面的参数可以看出:pga_aggregate_target=94371840和sga_target=285212672