RHEL7或CentOS7中缺少compat-libstdc++-33-3.2.3

lhrbest發表於2018-09-18

Missing or Ignored package compat-libstdc++-33-3.2.3 causes Text Issues (文件 ID 2254198.1)


如果不使用 Oracle Text 那麼可以忽略該包(Redhat 7或CentOS7 的安裝包中不含該包)。




In this Document


Symptoms

Cause

Solution

References


APPLIES TO:

Oracle Text - Version 11.2.0.3 to 12.2 BETA1 [Release 11.2 to 12.2]
Linux x86-64

SYMPTOMS

A) While installing Oracle Database 12c, the prerequisite check will look for a package  compat-libstdc++-33-3.2.3 (x86_64) , if it is not present a warning will be issued and the installation will not proceed unless the user chooses the option "Ignore All".

OR

B) If the package  compat-libstdc++-33-3.2.3 (x86_64)  was ignored during installation and now, if you create an index that uses the Text filter (ctxhx) without the library being present, the index will appear to succeed, but an error will be logged for each row that failed to index in the view CTX_USER_INDEX_ERRORS. The error text (ERR_TEXT) will be:

DRG-11207: user filter command exited with status 127

The affected documents will then not be searchable as their content has not been extracted.

OR

C) Calling one of the CTX_DOC procedures will cause a similar error message as (B). For example:


ORA-20000: Oracle Text error:
DRG-11207: user filter command exited with status 127
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.CTX_DOC", line 1473
ORA-06512: at line 1

 

CAUSE

As of Red Hat Enterprise Linux version 7 compat-libstdc++-33-3.2.3 (x86_64) has been moved into the optional channel. RedHat policy on this software is that support and guarantees cannot be maintained.
This policy may apply to other Linux x86_64 distributions either now or in the future. The package may also have been missed from installation in the case of Oracle Linux and the installer options to ‘ignore pre-reqs’ chosen on other 11g Release 2 or 12c.

SOLUTION

It is recommended to install package compat-libstdc++-33-3.2.3 (x86_64) if you are using Oracle Text or have plans to use it in future on the same release. Package can normally be installed/checked by running (as root) a command such as: (the exact command may vary by distribution).

rpm -qa | grep compat-libstdc++-33  
yum install compat-libstdc++-33  

On RedHat 7 you can add the optional channel to your yum installer with a command like:

yum-config-manager --enable rhel-7-server-optional-rpms

If you decided to not install this package, you can still proceed with the installation of Oracle by ignoring the warning and almost all features of the database will be unaffected and no errors will be reported in the database alert log.

The package is needed because it provides the library libstdc++.so.5 and this library is used only by the ctxhx executable in Oracle Text. Ctxhx is a program which is used to filter "formatted" documents such as word processor files, spreadsheets and PDF files in order to extract text to be indexed. When invoked, it runs in its own address space separate from the main Oracle executable.

It is used in just two places:

1- When creating an Oracle Text context index (indextype CTXSYS.CONTEXT) which uses the AUTO_FILTER preference. This preference may be manually specified, but is also automatically used when using FILE_DATASTORE, URL_DATASTORE or creating an index on a binary BLOB or BFILE column.

2- When using the FILTER, IFILTER or POLICY_FILTER procedures (or one of the procedures which depend on them such as HIGHLIGHT) from the CTXSYS.CTX_DOC package.

To Check whether the system is affected by this issue

The easiest way is to run the ctxhx executable directly:

Login on OS with Oracle Software owner


ORACLE@HOSTNAME>$ $ORACLE_HOME/ctx/bin/ctxhx


This would normally produce a "USAGE" message. If the necessary library is not present, you will see:
/oraclehomepath/ctx/bin/ctxhx: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory


This issue is fixed in Oracle Database 12c Release 2 (version 12.2.0.1) which doesn't reply on the same library but installer may still report the missing package as per Bug 25768879 : NECESSARY PACKAGES MISSING FROM 12.2 DB INSTALL PREREQ
and documentation

REFERENCES


NOTE:2062336.1  - Installation of 12.1.0.2 Oracle Database Server/Client on RHEL 7/OL7 reports pre-requisite package 'compat-libstdc++' missing.
 - ORACLE 12C CLIENT/DB ON RHEL 7 FAILS WITH MISSING OF COMPAT-LIBSTDC++-33-3.2.3



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2214380/,如需轉載,請註明出處,否則將追究法律責任。

相關文章