DB2建立nickname,导致CRASH的破解方案

数据库
以下的文章主要是阐述DB2建立nickname,导致CRASH的解决方案,以下的文章对其在实际相关操作中的正确破解方案,以下就是正文的详细内容的介绍。

我们今天是要和大家一起讨论的是DB2建立nickname,导致CRASH的解决方案,在对II4O进行使用时,对Wrapper, user mapping的创建可以说都是没问题的,但是,当创建nickname时,DB2 crash。

 

DB2 II V8.2 for Oracle 创建nickname时导致DB2 CRASH的解决方法(Linux)

 

(注:DB2 II 已经改名为Websphere II)

在使用 II4O时,创建Wrapper, user mapping都没问题,但是,当创建nickname时,DB2 crash。

在db2diag.log 中,有如下信息:

  1. 2005-03-13-14.22.36.412133+480 E7747G606 LEVEL: Severe   
  2. PID : 19883 TID : 3007177376 PROC : db2agent   
  3. (SAMPLE)   
  4. INSTANCE: db2inst1 NODE : 000 DB : SAMPLE   
  5. APPHDL : 0-14 APPID: GAC80471.NE04.00F483062900   
  6. FUNCTION: DB2 UDB, oper system services, sqloEDUCodeTrapHandler,   
  7. probe:10   
  8. MESSAGE : ADM0503C An unexpected internal processing error has occurred. ALL   
  9. DB2 PROCESSES ASSOCIATED WITH THIS INSTANCE HAVE BEEN SHUTDOWN.   
  10. Diagnostic information has been recorded. Contact IBM Support for   
  11. further assistance.   
  12. .   
  13. .   
  14. .   
  15. 2005-03-13-14.22.36.421935+480 I16005G624 LEVEL: Severe   
  16. PID : 19883 TID : 3007177376 PROC : db2agent   
  17. (SAMPLE)   
  18. INSTANCE: db2inst1 NODE : 000 DB : SAMPLE   
  19. APPHDL : 0-14 APPID: GAC80471.NE04.00F483062900   
  20. MESSAGE : RDS UCINTFC: pStatementText =   
  21. DATA #1 : Hexdump, 59 bytes   
  22. 0xB33849E0 : 4352 4541 5445 204E 4943 4B4E 414D 4520 CREATE NICKNAME   
  23. 0xB33849F0 : 4442 3249 4E53 5431 2E4F 5241 4C4F 4341 DB2INST1.ORALOCA   
  24. 0xB3384A00 : 4C20 464F 5220 5453 4831 2E44 4232 494E L FOR TSH1.DB2IN   
  25. 0xB3384A10 : 5354 312E 224C 4F43 414C 22 ST1."LOCAL"   
  26. .   
  27. .   
  28. .   
  29. 2005-03-13-14.22.36.476913+480 I39423G431 LEVEL: Severe   
  30. PID : 19824 TID : 3007177376 PROC : db2tcpcm   
  31. INSTANCE: db2inst1 NODE : 000   
  32. FUNCTION: DB2 UDB, oper system services, sqloEDUSIGCHLDHandler, probe:50   
  33. DATA #1 : String, 158 bytes   
  34. Detected the death of an EDU with process id 19883   
  35. The signal number that terminated this process was 11   
  36. Look for trap files (t19883.*) in the dump directory  

检查trap文件, t19883.000, 在 call stack,会发现:

  1. -FRAME-- --CODE-- --LOCATION--   
  2. BFFE8E70 83C4286A 0x0083 + A_SHAFinalCommon   
  3. (/opt/IBM/db2/V8.1/lib/libdb2e.so.1)   
  4. BFFE8F00 8B55E48D 0x00ae + A_X931RandomUpdate   
  5. (/home/oracle/OraHome1/lib/libclntsh.so.9.0)   
  6. BFFE8F60 83C40CEB 0x00d0 + ztcrseed3   
  7. (/home/oracle/OraHome1/lib/libclntsh.so.9.0)  

DB2建立nickname导致CRASH解决方法,这是DB2 II V8.2 和 Oracle 9i/10g 的一个兼容性问题.

 

如果是ORACLE 9i Workaround:

  1. 1) Back up your $ORACLE_HOME/lib/libclntsh.so and   
  2. $ORACLE_HOME/bin/genclntsh   
  3. 2) Add '-Wl,-Bsymbolic' to the link line of $ORACLE_HOME/bin/genclntsh:   
  4. LD="gcc -shared -Wl,-relax -L${ORACLE_HOME}/lib -Wl,-Bsymbolic"   
  5. # shared library link command   
  6. 3) Run genclntsh to create libclntsh.so   
  7. 4) Execute djxlinkOracle   
  8. 5) Stop and Start the instance  

如果是ORACLE 10g Workaround:

 

  1. 1) back up $ORACLE_HOME/bin/genclntsh,   
  2. $ORACLE_HOME/lib/libclntsh.so.10.1, $ORACLE_HOME/lib32/libclntsh.so.10.1   
  3. 2) cd $ORACLE_HOME/lib; mv libnnz10.so libnnz10.so.orig   
  4. (so libnnz10.so not exist in lib)   
  5. 3) cd $ORACLE_HOME/bin; modify the script genclntsh:   
  6. a). Add "-Wl, -Bsymbolic" to linker line, .... make sure there is no   
  7. spaces between the comma and -B.   
  8. ex. LD="gcc -shared -Wl,-relax -L${ORACLE_HOME}/lib -Wl,   
  9. -Bsymbolic" # shared library link command   
  10. b) Change libnnz10.so ==> libnnz10.a in following line   
  11. * -r ${OLIB}/libnnz10.so * && LNZ="-lnnz10  

以上的相关内容就是对DB2建立nickname导致CRASH解决方法的介绍,望你能有所收获。

【编辑推荐】

  1. IBM DB2中提高并发度的3个好用方案介绍
  2. DB2 V7存储过程构建环境的正确设置步骤
  3. DB2管理页大小的一些限制条件有哪些?
  4. 存储DB2 9 XML 数据的作用有哪些?
  5. IBM DB2文件系统已满如何破解?
责任编辑:佚名 来源: 网络整理
相关推荐

2010-08-06 13:40:06

DB2建立nickna

2010-09-07 11:01:13

DB2数据库

2010-08-20 11:28:45

DB2 -964问题

2010-08-05 09:59:47

DB2常见错误

2010-08-05 09:21:00

DB2数据库

2010-08-02 14:30:29

DB2建立

2010-07-29 11:24:31

DB2文件系统已满

2010-08-04 11:29:59

2010-07-28 09:33:56

DB2 databas

2009-12-16 10:42:04

.NET DB2

2010-07-27 15:44:21

db2建立databa

2010-08-06 13:26:29

DB2建立databa

2010-08-17 13:37:18

DB2 Online

2010-08-18 10:59:20

IBM DB2 Cat

2011-08-17 20:48:25

索引建立语句非聚集索引唯一索引

2010-08-02 17:37:06

DB2建立databa

2010-08-16 13:53:26

2010-08-04 15:00:06

DB2未使用索引

2010-08-12 16:10:45

DB2 Online

2010-08-06 09:39:27

DB2数据库分区
点赞
收藏

51CTO技术栈公众号