|
|
||||||||||||||||
| | 网站首页 | 考试商城 | 考证信息 | 技术文档 | 资料下载 | 考试留言 | IT资讯 | QQ咨询1 QQ咨询2 | ||
|
||
|
|||||
| 如何在Linux上扩展SGA超过1.7G | |||||
作者:ourexam 技术文档来源:ourexam 点击数: 更新时间:2005-6-24 ![]() |
|||||
|
今天一台Linux服务器扩展了一下内存,达到4G,开发的人自己修改了一下SGA结果数据库无法启动了. 启动不了时,出的错误是这个样子的: [oracle@neirong oracle]$ sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on Fri Nov 25 15:43:26 2005 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. Connected to an idle instance. SQL> startup ORA-27123: unable to attach to shared memory segment Linux Error: 22: Invalid argument Additional information: 1 Additional information: 458753 SQL> exit Disconnected 在32位平台上,缺省的SGA最大只能扩展到1.7G,如果需要支持更大的内存,就需要降低mapped_base,重新Link Oracle软件. 俺的平台为: [oracle@neirong bdump]$ cat /etc/redhat-release Red Hat Enterprise Linux AS release 3 (Taroon Update 2) 简单操作如下: cd $ORACLE_HOME/rdbms/lib cp ksms.s ksms.s.bak genksms -s 0x12000000 > ksms.s make -f ins_rdbms.mk ksms.o make -f ins_rdbms.mk ioracle 此处先备份ksms.s文件,如果编译过程中出现错误,保证操作可以被恢复: 恢复步骤大致如下: cd $ORACLE_HOME/rdbms/lib cp ksms.s.bak ksms.s genksms > ksms.s make -f ins_rdbms.mk ksms.o make -f ins_rdbms.mk ioracle 以下是操作日志: [oracle@neirong dbs]$ cd $ORACLE_HOME/rdbms/lib [oracle@neirong lib]$ genksms -s 0x12000000 > ksms.s [oracle@neirong lib]$ make -f ins_rdbms.mk ksms.o [oracle@neirong lib]$ make -f ins_rdbms.mk ioracle - Linking Oracle rm -f /opt/oracle/product/9.2.0/rdbms/lib/oracle gcc -o /opt/oracle/product/9.2.0/rdbms/lib/oracle -L/opt/oracle/product/9.2.0/rdbms/lib/ -L/opt/oracle/product/9.2.0/lib/ -L/opt/oracle/product/9.2.0/lib/stubs/ -Wl,-E `test -f /opt/oracle/product/9.2.0/rdbms/lib/skgaioi.o && echo /opt/oracle/product/9.2.0/rdbms/lib/skgaioi.o` /opt/oracle/product/9.2.0/rdbms/lib/opimai.o /opt/oracle/product/9.2.0/rdbms/lib/ssoraed.o /opt/oracle/product/9.2.0/rdbms/lib/ttcsoi.o /opt/oracle/product/9.2.0/lib/nautab.o /opt/oracle/product/9.2.0/lib/naeet.o /opt/oracle/product/9.2.0/lib/naect.o /opt/oracle/product/9.2.0/lib/naedhs.o /opt/oracle/product/9.2.0/rdbms/lib/config.o -lserver9 -lodm9 -lskgxp9 -lskgxn9 -lclient9 -lvsn9 -lwtcserver9 -lcommon9 -lgeneric9 /opt/oracle/product/9.2.0/rdbms/lib/defopt.o -lknlopt `if /usr/bin/ar tv /opt/oracle/product/9.2.0/rdbms/lib/libknlopt.a | grep xsyeolap.o > /dev/null 2>&1 ; then echo "-loraolap9" ; fi` -lslax9 -lpls9 -lplp9 -lserver9 -lclient9 -lvsn9 -lwtcserver9 -lcommon9 -lgeneric9 -lknlopt -lslax9 -lpls9 -lplp9 -ljox9 -lserver9 -locijdbcst9 -lwwg9 `cat /opt/oracle/product/9.2.0/lib/ldflags` -lnsslb9 -lncrypt9 -lnsgr9 -lnzjs9 -ln9 -lnl9 -lnro9 `cat /opt/oracle/product/9.2.0/lib/ldflags` -lnsslb9 -lncrypt9 ...... mv -f /opt/oracle/product/9.2.0/bin/oracle /opt/oracle/product/9.2.0/bin/oracleO mv /opt/oracle/product/9.2.0/rdbms/lib/oracle /opt/oracle/product/9.2.0/bin/oracle chmod 6751 /opt/oracle/product/9.2.0/bin/oracle 此后数据库可以以超过1.7G的SGA区设置启动: SQL> startup ORACLE instance started. Total System Global Area 2685476820 bytes Fixed Size 454612 bytes Variable Size 1073741824 bytes Database Buffers 1610612736 bytes Redo Buffers 667648 bytes Database mounted. Database opened. |
|||||
|
|
|||||
| 技术文档录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 考试地图 | 资料地图 | 下载地图 | |||
|