如何修改SGA大小

修改SGA必须保持的原则:1.sga_target不能大于sga_max_size,可以设置为相等。
                       2.SGA加上PGA等其他进程占用的内存总数必须小于操作系统的物理内存。
做如下操作前,必须备份dbs目录下的所有文件。
方法一:直接SQL命令行修改:
SQL>alter system set sga_target=1024m scope=spfile;
SQL>alter system set sga_max_size=1024m scope=spfile;
(如果spfile文件不存在,需先创建create spfile from pfile;)
alter system set sga_target=12g scope=spfile;
alter system set sga_max_size=12g scope=spfile;

然后
SQL>shutdown immediate
SQL>startup
SQL>show sga;   即可看到SGA的大小已经被修改

方法二:通过EM修改:
以SYS登陆到EM:管理->(数据库配置)所有初始化参数—>SPFile->
                在此界面可以直接定义sga_target与sga_max_size
然后重启数据库即可!

文章出处:http://www.diybl.com/course/7_databases/oracle/Oracleshl/200866/123114.html

 

 

 

cmd下部分操作:,oracle 10.2.0g

SQL> conn sys/rezin as sysdba
已连接。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 1073741824 bytes
Fixed Size                  1253124 bytes
Variable Size             696254716 bytes
Database Buffers          369098752 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
数据库已经打开。
SQL> show sga;

Total System Global Area 1073741824 bytes   ---原来大小
Fixed Size                  1253124 bytes
Variable Size             696254716 bytes
Database Buffers          369098752 bytes
Redo Buffers                7135232 bytes
SQL> alter system set sga_target=300m scope=spfile;

系统已更改。

SQL> alter system set sga_max_size=280m scope=spfile;

系统已更改。

SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  314572800 bytes    ---修改后的大小
Fixed Size                  1248720 bytes
Variable Size              96469552 bytes
Database Buffers          209715200 bytes
Redo Buffers                7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL>

你可能感兴趣的:(oracle,数据库,system,sql,oracle)