方法:1、执行“alter system set sga_max_size=数值 scope=spfile”命令;2、执行“alter system set sga_target=数值 scope=spfile”命令;3、重启数据库即可。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
oracle怎样修改sga
示例:将 SGA 由 2G 修改为 32G
方式一、通过 spfile 修改
1)使用SYS用户以SYSDBA身份登录系统
$ sqlplus / as sysdba
2)查询 memory_target 参数
3)执行命令修改如下参数
SQL>alter system set sga_max_size=32G scope=spfile; SQL>alter system set sga_target=32G scope=spfile;
注:alter system set sga_target=1600m scope=spfile;后面必须要加scope=spfile,指定修改Spfile。否则会报“无法修改初始化参数”的错。
4)重启数据库使修改生效
SQL> shutdown immediate; SQL> startup ;
方式二、通过 pfile 参数修改
1)创建 pfile
SQL>create pfile from spfile;
默认存放路径为: $ORACLE_HOME/dbs
2)修改 pfile 内容
$ vi INITorcl.ORA //假设 1)中生成的 pfle 文件名为INITorcl.ORA
修改后主要内容为
sga_target=34359738368(32G) lock_sga=true pga_aggregate_tagert=250000000(250M左右) workarea_size_policy=auto pre_page_sga=true sga_max_size=34359738368(32G)
3)用 pfile 启动数据库
SQL>startup pfile='$ORACLE_HOME/dbs/INITorcl.ORA'
推荐教程:《Oracle视频教程》