DB2バックアップが「/usr/lib/libnsrdb2.so」というSQL2071Nで失敗します。原因コード: "2"
Summary: DB2をv10.5から11.5にアップグレード システム(オペレーティング システム)にOpenSSLバージョン3があり、NMDAにバンドルされているOpenSSLバージョン1が存在する OpenSSLバージョン3がシステムに存在する場合。 db2vend プロセスは OpenSSL バージョン 3 にのみ依存しますが、libnsrdb2 プロセスは NMDA に存在する OpenSSL バージョンをロードします ...
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
データベースをV10.5からV11.5にアップグレードした後、DB2バックアップが次のエラーで失敗する
Error:
DB2 backup fails with SQL2071N "/usr/lib/libnsrdb2.so". Reason code: "2"
DB2DIAGログに次のエラーがあります。
2025-01-13-20.16.25.864739+060 E79273449E571 LEVEL: Error (OS)
PID : 29019 TID : 139807381163456 PROC : db2vend (db2logmgr.meth1 - 267 (
INSTANCE: db2prd NODE : 000
HOSTNAME: labhostPRD-00
FUNCTION: DB2 UDB, oper system services, sqloLoadModule, probe:191
CALLED : OS, -, dlopen
DATA #1 : Library name or path, 21 bytes
/usr/lib/libnsrdb2.so
DATA #2 : shared library load flags, PD_TYPE_LOAD_FLAGS, 4 bytes
0
DATA #3 : String, 92 bytes
/usr/lib/nsr/apps/lib64/libssl.so.1.1: undefined symbol: EVP_idea_cbc, version OPENSSL_1_1_0
2025-01-13-20.16.25.864904+060 I79274021E462 LEVEL: Error
PID : 29019 TID : 139807381163456 PROC : db2vend (db2logmgr.meth1 - 267 (
INSTANCE: db2prd NODE : 000
HOSTNAME: labhostPRD-00
FUNCTION: DB2 UDB, database utilities, sqluFencedVendorProcessCB::loadLibrary, probe:104
MESSAGE : ZRC=0x870F009B=-2029059941=SQLO_MOD_LOAD_FAILED
"Dynamic library load failed."
DATA #1 : String, 21 bytes
/usr/lib/libnsrdb2.so
Cause
OpenSSLバージョン3がシステムにインストールされている場合。
db2vend プロセスは OpenSSL バージョン 3 にのみ依存しますが、libnsrdb2 プロセスは NMDA に存在する OpenSSL バージョン 1 をロードします
OS OpenSSLパス: /usr/lib64/
NMDA OpenSSLパス: /usr/lib/nsr/apps/lib64/
以下は、機能していないホストのスニペットです。
2 つの db2vend プロセス
labhostPRD-00:(/root)(root)#ps -ef | grep db2vend | grep -v grep
db2prd 23876 23452 0 Feb05 ? 00:00:00 db2vend (PD Vendor Process - 1) 0
db2prd 24856 23452 0 Feb11 ? 00:00:04 db2vend (db2logmgr.meth1 - 27 (PRD)) 0
PID 23876 を使用した最初の db2vend は、OS OpenSSL パスから OpenSSL V3 をロードします
labhostPRD-00:(/root)(root)#lsof -p 23876 | grep -E "lib(ssl|crypto)"
db2vend 23876 db2prd DEL REG 8,4 51527190 /usr/lib64/libcrypto.so.3.1.4
db2vend 23876 db2prd DEL REG 8,4 51527189 /usr/lib64/libcrypto.so.1.1
db2vend 23876 db2prd DEL REG 8,4 51784225 /usr/lib64/libssl.so.3.1.4
PID 24856 の 2 番目の db2bend は、NMDA OpenSSL パス (/usr/lib/nsr/apps/lib64/libssl.so.1.1) と OS OpenSSL パスから OpenSSL V1 をロードします。
labhostPRD-00:(/root)(root)#lsof -p 24856 | grep -E "lib(ssl|crypto)"
db2vend 24856 db2prd mem REG 8,4 721456 50354171 /usr/lib/nsr/apps/lib64/libssl.so.1.1
db2vend 24856 db2prd mem REG 8,4 5715664 50354411 /usr/lib64/libcrypto.so.3.1.4
db2vend 24856 db2prd mem REG 8,4 3924472 50360290 /usr/lib64/libcrypto.so.1.1
db2vend 24856 db2prd mem REG 8,4 743784 50354413 /usr/lib64/libssl.so.3.1.4
上記のOpenSSLバージョンの取り違えがエラーの原因です。NMDA OpenSSL version 1 is compiled with "IDEA encryption algorithm for EVP" but OS OpenSSL Version 1 are not.
Resolution
- この問題は、OpenSSL V3を搭載して出荷されたNMDA 19.12で対処されています。
- OpenSSL バージョン 3 をアンインストールすると、db2vend は OS ライブラリー libssl.so.1.1 と libcrypto.so.1.1 をロードすることを余儀なくされ、その結果、ベンダー・インターフェースの初期化で NMDA とともに配布されたライブラリーをロードする必要がなくなるため、おそらく役立つでしょう
- 対処方法: DB2環境変数は、
/usr/lib/nsr/apps/lib64/パスを使用して、次の IBM ドキュメントを使用します。 DB2LIBPATH [ibm.com]
Products
NetWorker Family, NetWorkerArticle Properties
Article Number: 000297010
Article Type: Solution
Last Modified: 20 Mar 2025
Version: 2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.