Alle Jahre wieder

Alle Jahre wieder, steht bei Oracle für seine Datenbank ein Release Wechsel bzw. Upgrade vor der Tür. Mittlerweile sind wir bei Oracle 12c angekommen. Hauptargument ist der Support für die Kunden und Ihre damit verbundenen Verträge. Die Oracle Datenbank Version 11gR2 wird noch bis Mai 2017 von Oracle unterstützt. Danach müssen Kunde für einen erweiterten Support zusätzlich teuer bezahlen und können diesen bis maximal Ende 2020 in Anspruch nehmen. 

Oracle 12c selber bietet eine neue mandantenfähige Architektur, durch die zahlreiche Datenbanken in kürzester Zeit zusammengeführt und anschließend als Cloud Service verwaltet werden können. Oracle 12c bietet außerdem In-Memory-Datenverarbeitungsfunktion, die eine erhöhte Analyseleistung ermöglichen. Speziell im BW Umfeld kann der Kunde davon sehr profitieren. Weitere Datenbankfeatures sprechen für Performancegewinn, erhöhte Sicherheit und Verfügbarkeit. Das wichtigste Argument ist neben den blumigen Versprechungen, dass der Support um einige Jahre länger erhalten bleibt.

Die nachstehenden Abschnitte sollen den Oracle 11g Upgrade auf 12c unter Windows für SAP Systeme zeigen. 

Oracle 12 Upgrade Voraussetzungen

SSFS Konfiguration (Secure Storage in File System)

Bisher funktioniert die Verbindung des SAP-Systems und SAP-Tools (R3trans, R3load usw.), zur Datenbank über SQL Net (per DBAliasname, z.B. TNS), indem zunächst eine durch den Betriebssystem-Nutzer SIDADM autorisierte sog. OPS$-Verbindung (DB-Nutzer OPS$<SID>ADM) hergestellt wird. Dies gestattet den ausschließlichen Zugriff auf die Tabelle OPS$<SID>ADM.SAPUSER. Darin ist das Passwort für die eigentliche DB-Verbindung des SAP-Datenbankbenutzers (Standardname SAPSR3) verschlüsselt enthalten. Der OPS$-Remote-Connect (per TNS-Aliasnamen) wird von künftigen Oracle-Versionen nach Release 11g nicht mehr unterstützt. Stattdessen muss mit den nachfolgenden Tätigkeiten SSFS aktiviert werden:

1. Secure Verzeichnisse anlegen:

mkdir X:\usr\sap\%SAPSYSTEMNAME%\SYS\global\security\rsecssfs\data
mkdir X:\usr\sap\%SAPSYSTEMNAME%\SYS\global\security\rsecssfs\key

2. Umgebungsvariablen für SIDADM setzen:

RSEC_SSFS_DATAPATH I:\usr\sap\%SAPSYSTEMNAME%\SYS\global\security\rsecssfs\data
RSEC_SSFS_KEYPATH I:\usr\sap\%SAPSYSTEMNAME%\SYS\global\security\rsecssfs\key
rsdb_ssfs_connect = 1

3. Kennwort für neuen Secure Store generieren:

rsecssfx put DB_CONNECT/DEFAULT_DB_USER SAPSR3 -plain (Oracle Schema User)
rsecssfx put DB_CONNECT/DEFAULT_DB_PASSWORD „XXX“ (SAPSR3 PW)

4. Profilparameter im Default Profil vom SAP System eintragen. (Damit die neuen Parameter funktionieren, muss das SAP System durchgestartet werden)

rsec/ssfs_datapath = $(DIR_GLOBAL)$(DIR_SEP)security$(DIR_SEP)rsecssfs$(DIR_SEP)data
rsec/ssfs_keypath = $(DIR_GLOBAL)$(DIR_SEP)security$(DIR_SEP)rsecssfs$(DIR_SEP)key
rsdb/ssfs_connect = 1

5. BR-Tools SSFS Feature Aktivierung:

SQL> CREATE USER brt$adm IDENTIFIED BY XXX;
SQL> GRANT TO sapdba TO brt$adm;

Aufruf r3trans zum Test

r3trans –x

In der SID_trans.log sollte die erfolgreiche Nutzung von SSFS protokolliert sein.

 

Anlage Oracle Installations-User

Dieser User wird nur für die reine Installation/Upgrade und Konfiguration benötigt.

Oracle Installationsmedien

Benötigt werden Oracle 12c R1 Software (12.1), Oracle 12.1 Client aus dem Service Marketplace:

Aktuellste Generic und Bundle Patches.

Oracle 12 Installation

Die nächsten Schritte werden mit dem Installations-User ausgeführt, welcher vorher angelegt wurde. Dazu mit diesem User am Windows Server anmelden und die Windows Powershell mit Admin Rechten starten. Im Anschluss in das Verzeichnis der entpackten Oracle Downloads wechseln und dort das sapserver.ps1 Skript via Powershell starten. Falls Powershell eine Fehlermeldung bringt, Fremdsignierte Skripte können mit Befehl set-executionpolicy remotesigned erblaubt werden.

Folgende Optionen im Installationsskript nacheinander wählen und mit Next bestätigen: 

  • Installationstyp: 1 (Dedicated)
  • DBSID: aktuelle Datenbank SID
  • Ora Home Drive Letter: X (für neues Oracle_Home)
  • Ora Home User Type: oraclehome01 (Standard)
  • Silent mode: No
  • Start Installation: Yes

Mit Abschluss des Skript wird automatisch die Java Gui des Oracle 12 Installers aufgerufen. Hier wird - wie so häufig - der Wizard mit wenigen Klicks durchlaufen, damit die Installation starten kann. 

  • E-Mail Benachrichtigung: deaktivieren
  • Installation Option: Installation der Datenbank Software ausschließlich
  • Select Type of database Installation: Single Instanz Datenbank Installation
  • Sprache: Englisch
  • Datenbank Version: Enterprise Edition (6.0GB)
  • Oracle_Home User: oraclehome01
  • Software location: X:\oracle\oracleSID\SID\12102

Nachdem die Oracle 12 Datenbank erfolgreich installiert wurde, muss man dem neuen Oracle_Home User (in unserem Bsp. oraclehome01) noch einige lokalen Gruppen zuweisen. 

  • ORA_SID12102_DBA
  • ORA_SID12102_OPER
  • Administrators

Die Zuweisung ist notwendig, damit die zukünftigen Oracle 12 Services auch unter dem neuen Oracle_Home inkl. Environment laufen können. 

Oracle 12 Patches

Im nächsten Schritt werden die Oracle Patches für Oracle 12 (Generic und Bundle Patches) installiert. Dazu alle bereits entpackten Patches in den OPatch Ordner kopieren (X:\oracle\oracleSID\SID\12102\OPatch\). Anzeige des Inventars wie üblich.

Danach alle Patches mittels opatch einspielen. Der faule Leser kann auch gerne das von SAP bereitgestellte mopatch Skript verwenden.

Nachdem alle Patches erfolgreich installiert wurden, muss eine zweite Windows Anmeldung mit dem SIDADM User am Server erfolgen, da dieser noch die Oracle 11 Environments besitzt. Im angegebenen Ordner (X:\oracle\oracleSID\SID\12102\sap\ora_upgrade\pre_upgrade) werden die nachfolgenden Pre-Upgradeskripts ebenfalls in der CMD via SQL ausgeführt und ggf. auf Fehlermeldungen reagiert.

sqlplus / AS sysdba
SQL> @pre_upgrade_tasks.SQL
SQL> @pre_upgrade_checks_sap.SQL
SQL> @pre_upgrade_checks_ora.SQL

Nach erfolgreicher Ausführung der Skripts, muss das SAP System mit dem SIDADM herunterfahren werden. Dies bedeutet natürlich zeitgleich, dass ab jetzt die Downtime beginnt. An dieser Stelle empfiehlt es sich aus den Erfahrungen heraus, ein Backup der noch existierenden Oracle 11 Datenbank zu erstellen.

Oracle 12 Upgrade

Die kommenden Schritte werden wieder ausschließlich in der Oracle 12 Installations-User Session durchgeführt. Damit der Upgrade erfolgreich laufen kann, müssen zusätzlich alle *.sap und *.utl Files aus dem alten Oracle_Home\database in das neue Oracle_Home (X:\oracle\oracleSID\SID\12102\database) kopiert werden. Danach erfolgt das Starten des DBUA (Database Upgrade Assistant) aus dem Windows Startmenü und die anstehenden Einstellungen im Wizard sind zu wählen:

  • Auszuführender Vorgang: Upgrade von Oracle Database
  • Oracle_Home der Quelldatenbank: X:\oracle\SID\112
  • Verwaltungsoptionen: Keine
  • Listener Auswahl: Oracle 11 Listener (muss hochgefahren sein)
  • Backupstrategie: RMAN bzw. eigene Strategie
  • Benutzerdefinierte SQL-Skripte: post_upgrade_tasks.sql,set_compatible.sql

Einzustellende Upgradeoptionen sind

 

2 Tassen Kaffee später ist der Upgrade erfolgreich abgeschlossen.

Oracle 12 Upgrade Nacharbeiten

Zuletzt den Upgrade Assistent schließen, den Oracle Installations-User vom Server abmelden und die folgenden Nacharbeiten in der SIDADM Session durchführen:

  • Oracle 12 Listener Service einmal neu starten
  • Altes Oracle_Home und Pfadangaben im System bzw. SIDADM Environment durch neues Oracle_Home und Pfad ersetzen (X:\oracle\oracleSID\SID\12102\BIN)
  • Post-Upgradeskripts in der CMD via SQL ausführen:
sqlplus / AS sysdba
@?\rdbms\admin\utlu121s.SQL
@post_upgrade_checks.SQL
  • Neuen Oracle 12 Client mit SAPCAR entpacken und in das SAP Kernelverzeichnis kopieren
  • SAP Profile nach alten Oracle 11 Einträgen durchsuchen und ggf. anpassen
  • Oracle 12 Statistik Update in der CMD durchführen:
brconnect -u / -c -f stats -t all -f collect -p 4
  • Alte Oracle 11 Software deinstallieren (X:\oracle\SID\112\deinstall\deinstall.bat)

Nachdem alle Nacharbeiten durchgeführt wurden, ist die Downtime beendet und das SAP System kann wieder auf bekannte Wege gestartet werden. Ich hoffe das dieser Blog Eintrag den ein oder anderen Kollegen da draußen, evtl. die Hemmungen vor einem Oracle 12 Upgrade nimmt. Vielleicht können dadurch sogar noch Tipps und Tricks entnommen werden, die soweit gar nicht bekannt waren. Auf Feedback und Anregungen der Kollegen, würde ich mich jedenfalls sehr freuen.

Autor: Marco GrünhagenWebsite: /index.php/prof/profile-mg