Open the $ORACLE_BASE/oraInventory/logs/install_<timestamp>.log file to have a look at the specific error message.

Usually almost linking errors are arisen from any missing RPM packages. Very frequently I got the following error on the installation:

INFO: mv -f /oracle/app/product/10.2.0/db_1/bin/ctxlc /oracle/app/product/10.2.0/db_1/bin/ctxlcO 

INFO: mv ctxlc /oracle/app/product/10.2.0/db_1/bin/ctxlc 


INFO: chmod 751 /oracle/app/product/10.2.0/db_1/bin/ctxlc 

INFO: gcc -m32 -o ctxhx -L/oracle/app/product/10.2.0/db_1/ctx//lib32/ -L/oracle/app/product/10.2.0/db_1/lib32/ -L/oracle/app/product/10.2.0/db_1/lib32/stubs/ /oracle/app/product/10.2.0/db_1/ctx/lib/ctxhx.o -L/oracle/app/product/10.2.0/db_1/ctx/lib/ -ldl -lm -lctxhx -Wl,-rpath,/oracle/app/product/10.2.0/db_1/ctx/lib -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /oracle/app/product/10.2.0/db_1/lib/sysliblist` 

INFO: /usr/bin/ld: crt1.o: No such file: No such file or directory 

INFO: collect2: ld returned 1 exit status 

INFO: make: *** [ctxhx] Error 1 

INFO: End output from spawned process. 
INFO: ---------------------------------- 
INFO: Exception thrown from action: make 
Exception Name: MakefileException 
Exception String: Error in invoking target 'install' of makefile '/oracle/app/product/10.2.0/db_1/ctx/lib/ins_ctx.mk'. See '/oracle/app/oraInventory/logs/installActions2010-11-23_12-04-56PM.log' for details. 
Exception Severity: 1


This error is shown up to us because the linking compiler can not find the required package: libXp for i386. Just install the package and click to retry to link.

For the full list of package requirement of installing of Oracle 10g R2 (x86_64), refer to the following website:

libstdc++-devel (x86_64)
libstdc++-devel (i386) 
sysstat (x86_64)
glibc-devel (x86_64)
glibc-devel (i386) 

libaio-devel (x86_64)
libaio-devel (i386) 
gcc (x86_64)
gcc-c++ (x86_64)
elfutils-libelf-devel-static (x86_64)
elfutils-libelf-devel-static (i386)
unixODBC-devel (x86_64)
unixODBC-devel (i386)
compat-db (x86_64)
compat-gcc-34 (x86_64)
compat-gcc-34 (i386) 
compat-libstdc++-34 (x86_64)
compat-libstdc++-34 (i386)
libXp (i386)


The second error to mention is due to the incompatibility to GLIBC's version. It looks like the followings:

INFO: make[1]: *** [/oracle/app/product/10.2.0/db_1/sysman/lib/e2eme] Error 1 

INFO: make[1]: Leaving directory `/oracle/app/product/10.2.0/db_1/sysman/lib' 

INFO: make: *** [e2eme] Error 2 

INFO: End output from spawned process. 
INFO: ---------------------------------- 
INFO: Exception thrown from action: make 
Exception Name: MakefileException 
Exception String: Error in invoking target 'agent nmo nmb' of makefile '/oracle/app/product/10.2.0/db_1/sysman/lib/ins_sysman.mk'. See '/oracle/app/oraInventory/logs/installActions2010-11-23_12-04-56PM.log' for details. 
Exception Severity: 1


For this, just open the <Installation Package Dir>/install/oraparam.ini file with text editor. And then, find the line including [Linux-redhat-4.0-required] and replace the value of KERNEL with the one which is available by running the following command: uname -a

And, of course, change the content of the /etc/redhat-release file to redhat-4.

And. everything will be OK.

Any question? Let me know. 

Posted by 겨울이 오나보다
DATAGUARD에서 FAILOVER를 할 때 미리 V$DATABASE의 SWITCHOVER_STATUS를 확인하여 TO_STANDBY로 표시될 때만 FAILOVER 기능을 사용하여 PRIMARY/STANDBY DB의 역할 변경이 가능하게 된다.

하지만 간혹  SWITCHOVER_STATUS이 계속해서 ACTIVE SESSIONS으로 나타나는 경우가 발생하는데 이런 경우는 다음과 같이 찾아보도록 하자.

SQL> SELECT SID, PROCESS, PROGRAM FROM V$SESSION
 
 WHERE TYPE = ‘USER’ AND SID != (SELECT DISTINCT SID FROM V$MYSTAT);


위의 결과에서 나타나는 결과에서 PROCESS 컬럼의 값에 따라서 해결책을 찾을 수 있다.
 PROCESS 설  명 해결방법 
CJQ0 또는 Jnnn Job Queue Scheduler Process or its Slaves ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
QMN0 Advanced Queue Time Manager ALTER SYSTEM SET AQ_TM_PROCESSES=0;
DBSNMP ORACLE EM Management Agent Stop the EM agent by invoking the following command:
emctl stop agent 

위의 작업을 종료한 후 다시 SWITCHOVER_STATUS 컬럼값을 확인하면 TO_STANDBY로 바뀐 것을 확인할 수 있다.

참고로 해당 작업이 무엇인지 정확히 알고자 한다면 다음 쿼리를 실행하면 그 내용을 알 수가 있다.

SQL>  SELECT job, schema_user, what
  2   FROM DBA_JOBS;

 

Posted by 겨울이 오나보다

Posted by 겨울이 오나보다
이전버튼 1 이전버튼