Oracle 11g sga_target 参数设置
来源:互联网 发布:mysql查询两个表 编辑:程序博客网 时间:2024/06/04 18:09
Oracle 11g sga_target 参数设置
今天在一台linux测试机上装了Oracle 11g,安装好以后按照惯例调整sga_target 1G,pga_aggregate_target 200M
(对了,这2个参数在11g里面默认是0),然后重启数据库
结果报错
ORA-00844: Parameter not taking MEMORY_TARGET into account, see alert log for more information
MEMORY_TARGET?新参数?虽然在安装过程中瞟过一眼,但是也没太多注意,后来理解MEMORY_TARGET就是原来10g的
sga_target + pga_aggregate_target的总和,越来越智能了。
再看导致错误原因:
由于设置了Oracle的MEMORY_TARGET参数的值小于了SGA_TARGET和PGA_TARGET的总和,因此报错。
但是此时数据库已经启不来了,在数据库不能更改spfile的情况下,我们可以更改pfile,再用pfile启动
SQL> create pfile ='/home/oracle/initora11g.ora' from spfile;
SQL> !echo '*.memory_target=1024m' >>'/home/oracle/initora11g.ora';
将pfile里面的memory_target设置成1G
报错,再次验证memory_target>= sga_target + pga_aggregate_target
ORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least 1224M
ORA-01078: failure in processing system parameters
再改
SQL> !echo '*.memory_target=1224m' >>'/home/oracle/initora11g.ora';
SQL> !echo '*.sga_target=0' >>'/home/oracle/initora11g.ora';
报新错误了又
ORA-00845: MEMORY_TARGET not supported on this system
这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小
解决办法:http://yangtingkun.itpub.net/post/468/408235
最终启动成功
启动后再改回从spfile启动
SQL>create spfile from pfile = '/home/oracle/initora11g.ora';
然后再启动一次
SQL> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2151248 bytes
Variable Size 511708336 bytes
Database Buffers 549453824 bytes
Redo Buffers 5623808 bytes
Database mounted.
Database opened.
最后
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 1300M
memory_target big integer 1224M
pga_aggregate_target big integer 0
sga_target big integer 0
以下是http://yangtingkun.itpub.net/post/468/408235 正文内容
Oracle 11g的Linux版本在修改了MEMORY_TARGET或者SGA_TARGET后启动可能会报错:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小:
[root@enterprice64 ~]# df -k /dev/shm
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 4089416 0 4089416 0% /dev/shm
Oracle在metalink的文档:Doc ID: Note:460506.1中进行了说明。解决这个问题只有两个方法,一种是修改初始化参数,使得初始化参数中SGA的设置小于/dev/shm的大小,另一种方法就是调整/dev/shm的大小。
修改/dev/shm的大小可以通过修改/etc/fstab来实现:
[root@enterprice64 ~]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
LABEL=/data /data ext3 defaults 1 2
devpts /dev/pts devpts gid=5,mode=620 0 0
#tmpfs /dev/shm tmpfs defaults 0 0
tmpfs /dev/shm tmpfs defaults,size=10240M 0 0
LABEL=/home /home ext3 defaults 1 2
LABEL=/opt /opt ext3 defaults 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
LABEL=/usr /usr ext3 defaults 1 2
LABEL=/var /var ext3 defaults 1 2
LABEL=SWAP-sda8 swap swap defaults 0 0
~
~
"/etc/fstab" 13L, 965C written
[root@enterprice64 ~]# umount /dev/shm
[root@enterprice64 ~]# mount /dev/shm
[root@enterprice64 ~]# df -k /dev/shm
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 10485760 0 10485760 0% /dev/shm
[root@enterprice64 ~]# su - oracle
[oracle@enterprice64 ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Tue Oct 23 15:42:42 2007
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 4743446528 bytes
Fixed Size 2143824 bytes
Variable Size 3892316592 bytes
Database Buffers 805306368 bytes
Redo Buffers 43679744 bytes
Database mounted.
Database opened.
修改/etc/fstab,重新mount /dev/shm,然后就可以启动数据库了。
- Oracle 11g sga_target 参数设置
- oracle 10g 11g中的SGA_MAX_SIZE与SGA_TARGET参数
- 【很经典的文章】Oracle 11g sga_target 设置
- Solaris 10 安装oracle 11g 参数设置
- Oracle参数设置(10g)
- oracle 10g中的SGA_MAX_SIZE与SGA_TARGET的使用方法
- Oracle 10g 中sga_max_size 和sga_target用法
- Oracle 10g中 sga_max_size 与 sga_target的关系
- Oracle 10g 如何调整 sga_max_size 与 sga_target
- solaris 10 安装 oracle 11g R2内核参数设置
- 深入解析Oracle 10g中SGA_MAX_SIZE和SGA_TARGET参数的区别和作用
- 深入解析Oracle 10g中SGA_MAX_SIZE和SGA_TARGET参数的区别和作用
- SGA_TARGET
- SGA_TARGET
- oracle 参数设置
- Oracle 参数设置
- Oracle SGA 自动管理特性(sga_target参数)
- Oracle-SGA → sga_target and sga_max_size
- cassandra 1.0.x常用命令
- python下的MySQLdb使用
- 爱的礼物
- 五亦好摄
- c++中的左移、右移运算
- Oracle 11g sga_target 参数设置
- WPF Image控件 Source绑定相对路径方法
- 曹操给程序员的语录
- 总结2009年-2012年的网站设计
- java学习笔记---正则表达式
- js移上移出效果。
- 网站建设中的Ajax请求与浏览器缓存
- 内存对齐
- 创建常量、原子性的值类型