Oracle修改sga大小
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 835104768 bytes
Fixed Size 2180344 bytes
Variable Size 482347784 bytes
Database Buffers 348127232 bytes
Redo Buffers 2449408 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter memory_target; #修改内存目标大小设置为0就是取消这个功能。MEMORY_TARGET:动态控制SGA和PGA时,Oracle总共可以使用的共享内存大小,这个参数是动态的,因此提供给Oracle的内存总量是可以动态增大,也可以动态减小的。它不能超过MEMORY_MAX_TARGET参数设置的大小。默认值是0。
MEMORY_MAX_TARGET:这个参数定义了MEMORY_TARGET最大可以达到而不用重启实例的值,如果没有设置MEMORY_MAX_TARGET值,默认等于MEMORY_TARGET的值。使用动态内存管理时,SGA_TARGET和PGA_AGGREGATE_TARGET代表它们各自内存区域的最小设置,要让Oracle完全控制内存管理,这两个参数应该设置为0。
memory_max_target是一个非动态参数,不能在memory范围动态改变,只能通过指明 scope=spfile这个条件来达到数据库在下次启动后让改变生效的目的。但是memory_target这个参数是可以动态调节的...也就是说不需要重新启动DB,就可以让其生效。
MEMORY_MAX_TARGET 是设定Oracle能占OS多大的内存空间SGA_MAX_SIZE是Oracle SGA 区最大能占多大内存空间.
10g 的sga_max_size 是动态分配 Shared Pool Size,database buffer cache,large pool,java pool,redo log buffer 大小的,是根据Oracle 运行状况来重新分配SGA 各内存块的大小。PGA在10g中需要单独设定。
11g MEMORY_MAX_TARGET 参数包含SGA和PGA两部分。
在手动创建数据库时,只需要在创建数据库之前设置合适的MEMORY_TARGET和MEMORY_MAX_TARGET初始化参数。
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
memory_target big integer 4G
SQL> alter system set memory_target = 10240m scope = spfile;设置内存目标大小为10G,不要超过系统内存
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 835104768 bytes
Fixed Size 2180344 bytes
Variable Size 482347784 bytes
Database Buffers 348127232 bytes
Redo Buffers 2449408 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter memory_target; #查看目标内存大小
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
memory_target big integer 10G
SQL> show parameter target; #查看所有目标
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target integer 0
db_flashback_retention_target integer 1440
fast_start_io_target integer 0
fast_start_mttr_target integer 0
memory_max_target big integer 10G
memory_target big integer 10G
parallel_servers_target integer 4
pga_aggregate_target big integer 0
sga_target big integer 500M
SQL> alter system set sga_max_size=9216m scope=spfile; #设置sga最大为9g,并写入配置文件
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 9620525056 bytes
Fixed Size 2183872 bytes
Variable Size 9395244352 bytes
Database Buffers 201326592 bytes
Redo Buffers 21770240 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 9G
sga_target big integer 512M
SQL> alter system set sga_target=9216m scope=spfile; 设置sga目标大小为9G 并写入配置文件
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 9620525056 bytes
Fixed Size 2183872 bytes
Variable Size 402656576 bytes
Database Buffers 9193914368 bytes
Redo Buffers 21770240 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 9G
sga_target big integer 9G
发表评论