
Verschieden QuellenIm Internet wird vorgeschlagen, dass nach jedem Betriebssystem-Upgrade und/oder Patch eine erneute Verknüpfung der Oracle-Binärdateien erforderlich ist.
Ich kann verstehen, dass beim Upgrade von glibc eine erneute Verknüpfung erforderlich ist. Bei manchen Paketen ist wahrscheinlich keine erneute Verknüpfung erforderlich, bei manchen schon, bei manchen bin ich mir nicht sicher:
- Upgrade von glibc -> ich nehme an, erneutes Verknüpfen erforderlich
- vim aktualisieren -> ich nehme an, dass kein erneutes Verknüpfen erforderlich ist
- gzip upgraden -> ich bin nicht sicher
- Kernel aktualisieren -> ich bin nicht sicher
Hat jemand eine Liste oder kann mir jemand eine Liste mit den Bibliotheken zeigen, die Oracle tatsächlich verknüpft? Ich bin kein Oracle DBA und habe daher keine Ahnung vom Oracle-Verknüpfungsverfahren. Ich bin mir nicht einmal sicher, ob ich wirklich verstehe, was Oracle während der erneuten Verknüpfung macht: Es ist doch nicht wirklich üblich, dass Binärsoftware nach der Installation ihre eigene Verknüpfung durchführt, oder?
Um es kurz zu machen: Ich habe ein paar RHEL[345]-Boxen, auf die ich einige Patches aufspielen muss. Die meisten Boxen laufen mit Oracle und ich frage mich, welche Patches eine Neuverknüpfung erfordern und welche nicht. Eine möglichst vollständige Liste wäre nett :)
Antwort1
Ich musste Oracle-Datenbanken selten neu verknüpfen, vielleicht nur nach größeren Betriebssystem-Upgrades oder dem Wechsel von 32-Bit auf 64-Bit. Wenn Sie jedoch Zweifel haben, führen Sie es einfach aus. Es dauert eine Minute. Eine weitere Quelle, die Sie zu Rate ziehen können, ist Metalink-Hinweis 131321.1 ... der Kerngedanke ist:
" Unter diesen Umständen erfolgt die Neuverknüpfung automatisch:
- Ein Oracle-Produkt wurde mit einem von Oracle bereitgestellten Installationsprogramm installiert.
- Ein Oracle-Patch-Satz wurde über ein von Oracle bereitgestelltes Installationsprogramm angewendet.
Die folgenden Informationen wurden dem Abschnitt „Zertifizieren“ von Metalink hinzugefügt:
Allgemeine Hinweise zur Oracle-Datenbank – Enterprise Edition:
Betriebssysteminformationen: Die Anbieter garantieren die Binärkompatibilität des Betriebssystems. Daher ist beim Upgrade dieser Betriebssysteme keine Neuinstallation oder Neuverknüpfung der Oracle-Software erforderlich, sofern nicht ausdrücklich etwas anderes angegeben ist.
Unter den folgenden Umständen empfiehlt es sich, Oracle manuell neu zu verknüpfen (auch wenn der Betriebssystemanbieter dies möglicherweise nicht verlangt):
- Es wurde ein Betriebssystem-Upgrade durchgeführt.
- An den Systembibliotheken des Betriebssystems wurde eine Änderung vorgenommen. Dies kann während der Anwendung eines Betriebssystem-Patches auftreten.
- Eine Neuinstallation ist während der Neuverknüpfungsphase fehlgeschlagen.
- Core Dump einzelner ausführbarer Oracle-Dateien beim ersten Start.
- Ein einzelner Oracle-Patch wurde angewendet (explizite Anweisungen zum erneuten Verknüpfen sind jedoch normalerweise entweder in der README-Datei enthalten oder in das Patch-Installationsskript integriert).
"
Antwort2
Um ein vollständiges Bild zu erhalten, muss Oracle Clusterware zusätzlich zu dem oben Gesagten möglicherweise auch neu verknüpft werden, wenn Sie den Linux-Kernel ändern. Wenn Sie beispielsweise das ACFS-Dateisystem verwenden, verfügt Oracle über ACFS-Kerneltreiber für eine bestimmte Linux-Kernelversion. Ich bin mir jedoch nicht sicher, ob kleinere Kernel-Upgrades dafür in Frage kommen.
Es ist eigentlich nicht das Relink selbst, das die ACFS-Clusterware-Treiber repariert, sondern das Skript crs/install/rootcrs.pl -lock (oder roothas.pl -lock für eine Clusterware mit einem einzigen Knoten), das neue ACFS-Treiber installiert. Sie müssen rootcrs.pl -unlock aufrufen, bevor Sie die Clusterware-Binärdateien neu verknüpfen, und wenn das Relinking abgeschlossen ist, dann rootcs.pl -lock .
Antwort3
Aus dem Oracle Metalink-Hinweis „Relinking Oracle Home FAQ (Häufig gestellte Fragen) (Dokument-ID 1467060.1)“, der bereits in einer anderen Antwort erwähnt wurde, die aktuelle Version des Dokuments:
Wann ist eine manuelle Neuverknüpfung erforderlich? In den folgenden Situationen ist eine manuelle Neuverknüpfung erforderlich.
A) Nach einem Betriebssystem-Upgrade garantieren Betriebssystemanbieter im Allgemeinen die Binärkompatibilität des Betriebssystems. Daher ist beim Upgrade dieser Betriebssysteme keine Neuinstallation oder Neuverknüpfung der Oracle-Software erforderlich, sofern nicht ausdrücklich etwas anderes angegeben ist. „Oracle empfiehlt jedoch, nach einem Betriebssystem-Upgrade die Binärdateien von Oracle Home manuell neu zu verknüpfen.“ Bei Hardwareänderungen ist keine Neuverknüpfung erforderlich.
B) Nachdem das Betriebssystem gepatcht wurde. (Empfohlen).
Ist nach einem Betriebssystem-Upgrade, Downgrade, Patchen oder Entfernen des Patches eine Neuverknüpfung erforderlich? Ja, Oracle empfiehlt, nach einem Betriebssystem-Upgrade, Patchen, Downgrade oder Entfernen des Patches oder nach jeder Änderung, die das Verhalten der Betriebssystembibliothek beeinflusst, eine manuelle Neuverknüpfung der Oracle Home-Binärdateien durchzuführen. Eine erfolgreiche Neuverknüpfung zeigt, dass die ausführbaren Oracle-Dateien ordnungsgemäß mit den Betriebssystem-Binärdateien verknüpft sind.
Wenn Sie Oracle Linux verwenden, ist dies 100% kompatibel zu Redhat Enterprise Linux gemäßHäufig gestellte Fragen zu Oracle Linux
- Oracle Linux ist anwendungsbinärkompatibel mit Red Hat Enterprise Linux, unabhängig davon, ob der Unbreakable Enterprise Kernel oder der alternative Red Hat-kompatible Kernel von Oracle ausgeführt wird. Vorhandene Anwendungen laufen unverändert mit dem Unbreakable Enterprise Kernel, da alle Systembibliotheken unverändert bleiben.
Red Hat Enterprise Linux 7: Leitfaden zur Anwendungskompatibilität.
Hinweis: Während des Lebenszyklus einer Hauptversion unternimmt Red Hat wirtschaftlich angemessene Anstrengungen, um die Binärkompatibilität für die Kernlaufzeitumgebung über alle Nebenversionen und Errata-Hinweise hinweg aufrechtzuerhalten. Bei Bedarf kann Red Hat bei kritischen Sicherheitsauswirkungen oder anderen wichtigen Problemen Ausnahmen von diesem Kompatibilitätsziel machen. Darüber hinaus enthalten Hauptversionen von Red Hat Enterprise Linux, wie oben und in Anhang A beschrieben, eine begrenzte Anzahl abwärtskompatibler Bibliotheken, die in früheren Hauptversionen enthalten waren, um eine einfache Migration von Anwendungen zu ermöglichen. Normalerweise wendet Red Hat Änderungen so an, dass der Änderungsumfang minimiert und die Binärkompatibilität aufrechterhalten wird. Ausnahmen können unter bestimmten Umständen für kontrollierte Paketneubasierungen gelten.
Daher empfiehlt Oracle, die Binärdateien nach einer Änderung (einem Patch, einem Upgrade usw.) erneut zu verknüpfen, und Redhat unternimmt lediglich „kommerziell vertretbare Anstrengungen, um die Binärkompatibilität für die Kernlaufzeitumgebung über alle Nebenversionen hinweg aufrechtzuerhalten“.
Für die Binärkompatibilität ist es nicht nur erforderlich, dass das Betriebssystem die Anwendungsbinärschnittstelle (ABI) nicht ändert, sondern auch, dass die Anwendung nur diese Schnittstelle und keine anderen, möglicherweise nicht dokumentierten Routinen verwendet.
Das erneute Verknüpfen ist einfach und Oracle stellt ein Skript bereit, das in der richtigen Umgebung ausgeführt werden muss. Sie können also tatsächlich eine Verknüpfung zu den Startskripten Ihrer Datenbank hinzufügen, falls Sie eines haben, und diese Verknüpfung jedes Mal ausführen, wenn Sie die Datenbank starten.
Die benötigten Linux-Pakete finden Sie imDatenbankinstallationshandbuch für Linuxim Bereich
- Vorinstallationsaufgaben für Oracle-Datenbanken
4.8. Betriebssystemanforderungen für x86-64-Linux-Plattformen
4.8.1. Unterstützte Oracle Linux 7 und Red Hat Enterprise Linux 7 Distributionen für x86-64 und für Linux 7 und Oracle 12. Sie finden
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
compat-libstdc++-33-3.2.3-71.el7.i686
compat-libstdc++-33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
Ich bin mir jedoch nicht sicher, wie zuverlässig diese Informationen im Handbuch sind. >Sie können für einige Binärdateien auch den Befehl „ldd“ ausführen, um herauszufinden, welche Bibliotheken sie verwenden.
$ ldd $ORACLE_HOME/bin/oracle
linux-vdso.so.1 => (0x...)
libodm11.so => $ORACLE_HOME/lib/libodm11.so (0x...)
libcell11.so => $ORACLE_HOME/lib/libcell11.so (0x...)
libskgxp11.so => $ORACLE_HOME/lib/libskgxp11.so (0x...)
librt.so.1 => /lib64/librt.so.1 (0x...)
libnnz11.so => $ORACLE_HOME/lib/libnnz11.so (0x...)
libclsra11.so => $ORACLE_HOME/lib/libclsra11.so (0x...)
libdbcfg11.so => $ORACLE_HOME/lib/libdbcfg11.so (0x...)
libhasgen11.so => $ORACLE_HOME/lib/libhasgen11.so (0x...)
libskgxn2.so => $ORACLE_HOME/lib/libskgxn2.so (0x...)
libocr11.so => $ORACLE_HOME/lib/libocr11.so (0x...)
libocrb11.so => $ORACLE_HOME/lib/libocrb11.so (0x...)
libocrutl11.so => $ORACLE_HOME/lib/libocrutl11.so (0x...)
libaio.so.1 => /lib64/libaio.so.1 (0x...)
libdl.so.2 => /lib64/libdl.so.2 (0x...)
libm.so.6 => /lib64/libm.so.6 (0x...)
libpthread.so.0 => /lib64/libpthread.so.0 (0x...)
libnsl.so.1 => /lib64/libnsl.so.1 (0x...)
libc.so.6 => /lib64/libc.so.6 (0x...)
/lib64/ld-linux-x86-64.so.2 (0x...)
$
Ich denke aber, dass es einfacher ist, die Oracle-Software neu zu verknüpfen. Das ist nicht schwierig. Gemäß der Metalink-Anmerkung setzen Sie die Variablen
ORACLE_HOME
PATH to include $ORACLE_HOME/bin
LD_LIBRARY_PATH $ORACLE_HOME/lib:/usr/lib
und Renn
$ORACLE_HOME/bin/relink all
Antwort4
ich würde vorschlagenNEINfür alle Ihre Szenarien. Ich habe immer verstanden, dass das erneute Verknüpfen für den Fall gedacht ist, dass Sie Teile IhresOrakelInstallation, nicht das unterstützende Betriebssystem.