最近一直在给客户升级数据库,天天是加班,都已经有1个多月没有更新了。
问题1:
# /oracle/app/oracle/product/10.2.0/crs_1/root.sh WARNING: directory '/oracle/app/oracle/product/10.2.0' is not owned by root WARNING: directory '/oracle/app/oracle/product' is not owned by root WARNING: directory '/oracle/app/oracle' is not owned by root WARNING: directory '/oracle/app' is not owned by root WARNING: directory '/oracle' is not owned by root Checking to see if Oracle CRS stack is already configured Checking to see if any 9i GSD is up Setting the permissions on OCR backup directory Setting up NS directories Oracle Cluster Registry configuration upgraded successfully WARNING: directory '/oracle/app/oracle/product/10.2.0' is not owned by root WARNING: directory '/oracle/app/oracle/product' is not owned by root WARNING: directory '/oracle/app/oracle' is not owned by root WARNING: directory '/oracle/app' is not owned by root WARNING: directory '/oracle' is not owned by root exec(): 0509-036 Cannot load program crsctl.bin because of the following errors: 0509-130 Symbol resolution failed for crsctl.bin because: 0509-136 Symbol _Getctype__FPCc (number 101) is not exported from dependent module /usr/lib/libC.a[ansi_64.o]. 0509-136 Symbol _Getnumpunct__FPCc (number 105) is not exported from dependent module /usr/lib/libC.a[ansi_64.o]. 0509-192 Examine .loader section symbols with the 'dump -Tv' command. Failure initializing entries in /etc/oracle/scls_scr/bdpbak1.
解决的问题很简单,其它也是自己没有认真看官方文档的原因,原来没有在这么低的版本安装过,下面是官方文档中的要求
The following operating system filesets are required: bos.adt.base bos.adt.lib bos.adt.libm bos.perf.libperfstat bos.perf.perfstat bos.perf.proctools rsct.basic.rte rsct.compat.clients.rte xlC.aix50.rte 7.0.0.4 xlC.rte 7.0.0.1 To obtain the previous two xlC filesets mentioned here, Oracle Database10gR2 users who do not install the IBM XL C/C++ Enterprise Edition V7.0 compiler should install the IBM XL C/C++ Enterprise Edition V7.0 for AIX Runtime Environment Component. Download all runtime environment file sets, with no license requirement, in one package from the following Web site:
下面是自己环境的情况
# lslpp -l|grep xlC xlC.aix50.rte 6.0.0.13 COMMITTED C Set ++ Runtime for AIX 5.0 xlC.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor xlC.msg.en_US.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor xlC.msg.en_US.rte 6.0.0.0 COMMITTED C Set ++ Runtime xlC.rte 6.0.0.0 COMMITTED C Set ++ Runtime # lslpp -l|grep xlC xlC.adt.include 10.1.0.0 COMMITTED C Set ++ Application xlC.aix50.rte 10.1.0.0 COMMITTED XL C/C++ Runtime for AIX 5.3 xlC.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor xlC.msg.en_US.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor xlC.msg.en_US.rte 10.1.0.0 COMMITTED XL C/C++ Runtime xlC.rte 10.1.0.0 COMMITTED XL C/C++ Runtime 可以运行xlC来查看是否成功,再次运行root.sh正常
问题2:
升级到10.2.0.4,在2节点运行root.sh的时候hang住
# /oracle/app/oracle/product/10.2.0/crs_1/install/root102.sh Creating pre-patch directory for saving pre-patch clusterware files Completed patching clusterware files to /oracle/app/oracle/product/10.2.0/crs_1 Relinking some shared libraries. Relinking of patched files is complete. WARNING: directory '/oracle/app/oracle/product/10.2.0' is not owned by root WARNING: directory '/oracle/app/oracle/product' is not owned by root WARNING: directory '/oracle/app/oracle' is not owned by root WARNING: directory '/oracle/app' is not owned by root WARNING: directory '/oracle' is not owned by root Preparing to recopy patched init and RC scripts. Recopying init and RC scripts. Startup will be queued to init within 30 seconds. Starting up the CRS daemons. Adding daemons to inittab Waiting for the patched CRS daemons to start. This may take a while on some systems. . . . . . . . . . . . . . . . . . . . . Timed out waiting for the CRS daemons to start. Look at the system message file and the CRS log files for diagnostics.
在cssOUT.log有下面的日志
priority string (4)
Warning : Current stack limit is set to UNLIMITED. Resizing..
Info : RLIMIT_STACK set to : 2097152
mlockall: unable to lock pages (-1/1)
The stack ulimits for both oracle and root are set to unlimited. Changes * Applying 10.2.0.4 patchset and running root102.sh, or * Applying 10.2.0.3 CRS Bundle Patch #3 or above, or * Changing ulimit settings for root or oracle, when running CRS 10.2.0.3 with CRS BP#2 or above, or CRS 10.2.0.4. Cause The problem in this case is with the ulimit settings. Setting the stack size to "unlimited" causes ocssd to fail in its call to OS function mlockall. Basically AIX is trying to pin an unlimited amount of memory. Solution Set the ulimits for BOTH ROOT AND ORACLE users to the following recommended values: fsize = -1 core = 2097151 cpu = -1 data = 524288 rss = 524288 stack = 524288 stack_hard = 524288 nofiles = 2000
通过修改oracle的资源限制后,可以正常启动crs。
aix 5.3 ml6安装10.2.0.1 rac报错:等您坐沙发呢!