修改oracle memory_target

用oracle用户登录,

sqlplus "/as sysdba"

SQL> show parameters target;

show parameters spfile;

alter system set memory_max_target=4G scope=spfile;

alter system set memory_max_target=4G scope=both;

tmpfs /dev/shm tmpfs defaults,size=24G 0 0

-查看当前使用的哪个参数文件启动的

    SQL> select distinct isspecified from v$spparameter;

     ISSPEC

    ------

    FALSE

看第一个值是FALSE还是TRUE,如果是FALSE,则是pfile,否则则是spfile.

第一行为TRUE可知,是从spfile启动的,有两行,其中第二行为FALSE,表示有两个参数文件,一个是spfile,一个是pfile

 

最终:修改参数的方法:

先用 mount -o remount,size=16G  tmpfs

(无论实际内存大小如何,上述命令都能成功,只是不知道内存太小,oracle是否真能启动)

或类似 mount -t tmpfs -o remount,size=32G tmpfs/tmp(命令成功,但没测试oracle启动正常与否)

 

修改 tmpfs 大小,使oracle能够启动成功;

然后:

用oracle用户lmoracle登录,执行:

sqlplus "/as sysdba"

create pfile='/pb/lmoracle/a.txt' from memory;

如果oracle已经被正常启动的情况下,可以得到一个保存所有参数的文件:/pb/lmoracle/a.txt

修改a.txt中的

memory_target=2G

memory_target=24G

在sqlplus中执行shutdown;

退出sqlplus,重新执行下面的命令进入sqlplus:

sqlplus "/as sysdba"

然后用修改后的参数文件启动数据库实例:

startup pfile='/pb/lmoracle/a.txt';

看一下参数:

show parameters target;

无误后,

create spfile from memory;

这样就把改好的参数文件保存到缺省的spfile中了。

重启数据库(或重启机器)

欢迎转载和交流,有问题可联系 QQ: 83555727 或Email 83555727@qq.

你可能感兴趣的:(Oracle等数据库)