在本地win10 ,释放Oracle的内存占用时,更改sga_max_size,因为不太了解,更改的值小于 sga_target ,导致数据库起不来。
1.根据spfiel创建pfile后,修改pfile中的sga_max_size参数
2.用pfile启动数据库,测试正常。
3.根据pfiel创建spfile
4.用spfile启动数据库。
cmd输入:sqlplus /nolog,完成登录
连接数据库:conn /as sysdba
创建pfile文件:CREATE PFILE='D:\TOOLS\oracle\app\oracle\product\12.1.0\dbhome_1\dbs\pfile01.ora' FROM SPFILE;
根据路径找到文件,修改数据:*.sga_target的数值要小于或等于*.sga_max_size的数值
改完后启动pfile:
SQL> startup pfile='D:\TOOLS\oracle\app\oracle\product\12.1.0\dbhome_1\dbs\pfile01.ora'
ORACLE instance started.Total System Global Area 2147483648 bytes
Fixed Size 3834152 bytes
Variable Size 671092440 bytes
Database Buffers 1459617792 bytes
Redo Buffers 12939264 bytes
Database mounted.
Database opened.根据pfile 生成 spfile:(spfile文件原来就有的,重新生成的替换掉原来的。以防万一的话可以先备份一下。)
SQL> create spfile='D:\TOOLS\oracle\app\oracle\product\12.1.0\dbhome_1\database\spfileorcl.ora' from pfile='D:\TOOLS\oracle\app\oracle\product\12.1.0\dbhome_1\dbs\pfile01.ora';File created.
关闭数据库:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.用spfile 打开库。
SQL> startup
ORACLE instance started.Total System Global Area 2147483648 bytes
Fixed Size 3834152 bytes
Variable Size 671092440 bytes
Database Buffers 1459617792 bytes
Redo Buffers 12939264 bytes
Database mounted.
Database opened.现在就可以退出,用常规方式登录了。