Home > technisches Webinar > Oracle SW Installation mit Patches ohne GUI

Oracle SW Installation mit Patches ohne GUI

Dieses Webinar finden Sie auch auf unserem Youtube Webinar Channel.

DB Masters Webinar: Oracle Datenbank Software Installation inklusive Patched ohne GUI unter Linux

In diesem Webinar gehen wir darauf ein, warum es sinnvoll sein kann, keine GUI auf einem Datenbank Server zu konfigurieren und wie man trotzdem erfolgreich und schnell ein Oracle Installation durchführt.

Warum will man Linux Server ohne GUI installieren?

Ohne GUI ist eine typische Linux Installation in wenigen Minuten (plus der Zeit für den Server Reboot) fertig. Speziell wenn man viele Systeme installiert, ist es auch ein Zeitfaktor. Speziell wenn man die Installation auch mittels Kickstart soweit automatisiert, dass keine weitere Interaktion mehr benötigt wird. Je weniger Komponenten auf einem Server installiert sind, um so weniger Sicherheitslücken kann es geben!

Unterschiede zwischen Oracle Linux versus RedHat Linux

  • Oracle Linux basiert auf RedHat Linux
  • Oracle Linux ist kostenlos, lediglich für die Wartung (Support) muss man zahlen!
  • Oracle bietet einige Erweiterungen wie
    • UEK – Unbreakable Enterprise Kernel.
      • Aktuell basiert der UEK6 auf Linux Kernel 5.4 und somit viel aktueller als der original RedHaT Kernel
      • Unterstützt CGroup V2, OCFS2, BTRFS, ...
      • Viele Optimierungen wie Kernel Memory Management, NFS Performance, ...
      • NVDIMM Support
    • Ksplice – ermöglicht Online Patching

Oracle Linux oder RedHat Installation ohne GUI

Das ist keine vollständige Installationsanleitung sondern nur ein grober Überblick welche Schritt nötigt sind.

Egal ob man sich für OL oder RedHat und für jeweils aktuelle Versionen der Release 7 oder 8 entscheidet, die Installation ist grundsätzlich praktisch ident.

  • Minimal Installation
    • Idealerweise mit eigenem Mountpoint für /u01 mit zumindest 64GB
    • Netzwerkkonfiguration und Hostnamen schon korrekt durchführen
  • OS Nacharbeiten
    • Host in /etc/hosts eintragen (wegen Listener)
    • /etc/selinux/config: permissive statt enforcing (zumindest für Installation)
    • Firewall Konfiguration für Oracle vorbereiten oder Firewall gegebenenfalls während der Installation deaktivieren

Oracle PREINSTALL und weitere nötige Pakete installieren

Hier wieder ein Vorteil von Oracle Linux - mit den PreInstall RPMs erspart man sich einiges an Arbeit während der Installation.

yum install -y oracle-database-preinstall-19c.x86_64
yum install –y psmisc.x86_6 # wird von Opatch unter OL 8 / RHAT 8 benötigt

Sofern man ODBC oder NFS benötigt noch zusätzlich

yum install –y unixODBC.x86_64 unixODBC.i686 unixODBC-devel.x86_64 unixODBC-devel.i686
yum install –y net-tools

Danach noch das Passwort für den Benutzer Oracle setzen und weitere Schritte wie SUDO und SSH Konfiguration durchführen.

passwd oracle

Oracle Datenbank Software und aktuellen Critical Patch Update bereitstellen

Die Oracle Datenbank Software wahlweise von otn.oracle.com oder edelivery.oracle.com herunter laden.

Den aktuellen Oracle Critical Patch Update sowie das aktuelle OPastch für die Datenbank Version von support.oracle.com besorgen. In unserem Beispiel nutzen wir den Oracle 19c Critical Patch Update vom Oktober 2020 mit mit der Patch Nummer 31720396 bestehend aus dem Datenbank Patch 31771877 und dem OJVM Patch 31668882.

Die Software einfach auf den Linux Server kopieren - beispielsweise unter /home/oracle/stage.

Silent Installation der Oracle Software

Vorbereitung

cd /home/oracle/stage/
unzip -q p31720396_190000_Linux-x86-64.zip
unset ORACLE_SID
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_SE
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_HOSTNAME=`hostname` ; echo $ORACLE_HOSTNAME
export CV_ASSUME_DISTID=OL7 # nur für OL 8 / RedHat 8

Oracle Datenbank Installation durchführen

mkdir -p $ORACLE_HOME
cd $ORACLE_HOME
unzip -q /home/oracle/stage/LINUX.X64_193000_db_home.zip
unzip -qo /home/oracle/stage/p6880880_190000_Linux-x86-64.zip

Oracle Installer im Silent Mode für eine Oracle SE2 Installation

Das Beispiel ist für eine SE2, man kann aber auch eine EE Installation auf diese Art durchführen

./runInstaller -ignorePrereq -waitforcompletion -silent \
-applyRU /home/oracle/stage/31720396/31771877 \
-applyOneOffs /home/oracle/stage/31720396/31668882 \
-responseFile ${ORACLE_HOME}/install/response/db_install.rsp \
oracle.install.option=INSTALL_DB_SWONLY \
ORACLE_HOSTNAME=${ORACLE_HOSTNAME} \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=${ORA_INVENTORY} \
SELECTED_LANGUAGES=en,en_US \
ORACLE_HOME=${ORACLE_HOME} \
ORACLE_BASE=${ORACLE_BASE} \
oracle.install.db.InstallEdition=SE2 \
oracle.install.db.OSDBA_GROUP=dba \
oracle.install.db.OSBACKUPDBA_GROUP=backupdba \
oracle.install.db.OSDGDBA_GROUP=dgdba \
oracle.install.db.OSKMDBA_GROUP=kmdba \
oracle.install.db.OSRACDBA_GROUP=racdba \
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
DECLINE_SECURITY_UPDATES=true

Post Install als root durchführen

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_SE/root.sh

Und man ist fertig mit der Installation. Auf aktuellen Servern mit lokalen SSD dauert das die ganze Installation ca. 10-15 Minuten!

Weitere Optionen beim runInstaller:

  • Gleich eine Datenbank erzeugen lassen.
  • dDie Root Scripts automatisch laufen lassen - wahlweise das Root Passwort mitgeben oder SODOER Konfiguration vornehmen.

Erzeugen einer Datenbank ohne GUI

Das ist ebenfalls ganz einfach möglich. Vorsicht, wenn man Oracle SE2 Datenbanken erzeugen möchte, sollte man dies über das Custom Tempalte machen und nur die benötigten Optionen angeben. In diesem Fall lässt man sich auf einem Rechner mit GUI die CREATE SCRIPTS erzeugen, die man auf dem Rechner ohne GUI laufen läßt.

export ORACLE_SID=MYDB
export PDB_NAME=pdb1
export DATA_DIR=$ORACLE_BASE/oradata
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname ${ORACLE_SID} -sid ${ORACLE_SID} -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-createAsContainerDatabase true \
-numberOfPDBs 1 \
-pdbName ${PDB_NAME} \
-pdbAdminPassword PdbPassword1 \
-databaseType MULTIPURPOSE \
-memoryMgmtType auto_sga \
-totalMemory 2000 \
-storageType FS \
-datafileDestination "${DATA_DIR}" \
-redoLogFileSize 50 \
-emConfiguration NONE \
-ignorePreReqs

Zusammenfassung

Die Installation von Oracle Datenbank Software unter Linux kann ganz einfach auch ohne GUI erfolgen.

  • Reduktion des Security Footprints
  • Schnelleres, automatisiertes Rollout
  • Einfaches Erzeugen von ein oder mehreren Datenbanken

 

Interesse an diesem Webinar geweckt?

Dann schauen Sie es sich doch direkt auf unserem Youtube Channel an: DB Masters Webinar: Oracle Datenbank Software Installation inklusive Patched ohne GUI unter Linux.

 

Vergessen Sie nicht unseren Youtube Channel zu abonnieren, damit Sie keines unserer Videos verpassen!