|
|
32BIT的solaris(sparc)如何调整SGA
针对32bit的从8.0.X到9.0.X的数据库
一. 了解怎样重新分配SGA
在sun的系统上,sga区要大于256M。
sgabeg = 0xe0000000 | 256Mb SGA
sgabeg = 0xd0000000 | 512Mb SGA
sgabeg = 0xc0000000 | 768Mb SGA
sgabeg = 0xb0000000 | 1Gb SGA
sgabeg = 0xa0000000 | 1.25Gb SGA
sgabeg = 0x90000000 | 1.5Gb SGA
sgabeg = 0x80000000 | 1.75Gb SGA
sgabeg = 0x77000000 | just less than 2Gb SGA
sgabeg = 0x70000000 | 2Gb SGA
sgabeg = 0x60000000 | 2.25Gb SGA
sgabeg = 0x50000000 | 2.5Gb SGA
sgabeg = 0x40000000 | 2.75Gb SGA
sgabeg = 0x30000000 | 3Gb SGA
sgabeg = 0x20000000 | 3.25Gb SGA
sgabeg = 0x10000000 | 3.5Gb SGA
sgabeg = 0x01000000 | 16Mb less than 3.75Gb SGA
二. 对于9.0.X的版本
1. 关闭当前的所有数据库
2. cd $ORACLE_HOME/lib
cp liberver9.a libserver9.a.orig(备份这个文件)
3.cd $ORACLE_HOME/rdbms/lib
生成ksms.s文件
$ORACLE_HOME/bin/genksms –b new_location >ksms.s
例如:$ORACLE_HOME/bin/genksms –b 0x60000000 >ksms.s(增至2.25Gb)
4.生成ksms.o文件
make –f ins_rdbms.mk ksms.o
5.归档ksms.o文件至libserver9.a文件
ar -r $ORACLE_HOME/lib/libserver9.a ksms.o
6.重新链接
make –f ins_rdbms.mk ioracle
三. 对于8.1.X的版本
1.关闭当前的所有数据库
2.cd $ORACLE_HOME/lib
cp liberver8.a libserver8.a.orig(备份这个文件)
3.cd $ORACLE_HOME/rdbms/lib
生成ksms.s文件
$ORACLE_HOME/bin/genksms –b new_location >ksms.s
例如:$ORACLE_HOME/bin/genksms –b 0x60000000 >ksms.s(增至2.25Gb)
4.生成ksms.o文件
make –f ins_rdbms.mk ksms.o
5.归档ksms.o文件至libserver9.a文件
ar -r $ORACLE_HOME/lib/libserver9.a ksms.o
6.重新链接
make –f ins_rdbms.mk ioracle
7.如果使用的是sun4u老版本的solaris结构,则在第3步中将new_location的值减少一个0。
例如:0x80000000改成0x8000000
四. 对于8.0.X的版本
1. 关闭当前的所有数据库
2. cd $ORACLE_HOME/rdbms/lib
3. 修改ksms.s文件
$ORACLE_HOME/bin/genksms –b new_location >ksms.s
4. 备份ins_rdbms.mk文件
cp ins_rdbms.mk ins_rdbms.mk.ksms
5. 修改ins_rdbms.mk文件
将ksms.s $(RDBMSLIB)ksms.s:
$(GENKSMS) > ksms.s
改为ksms.s $(RDBMSLIB)ksms.s:
$(GENKSMS) > ksms.s.default_sgabeg
6. 生成ksms.o对象
make –f ins_rdbms.mk ksms.o
7. 重新连接
make –f ins_rdbms.mk ioracle
8.如果使用的是sun4u老版本的solaris结构,则在第3步中将new_location的值减少一个0。
例如:0x80000000改成0x8000000 |
|