Andre Faustmann, Michael Höding, Gunnar Klein, Ronny Zimmermann Oracle -Datenbankadministration für SAP Galileo Press Bonn Boston
1 Einleitung 1.1 1.2 1.3 1.4 1.5 Gründe, dieses Buch zu besitzen 16 Aufgaben der SAP-Basis 18 Gliederung dieses Buches 19 Konventionen und weitere Informationen 24 Danksagung 25 Grundwissen SAP 2.1 2.2 2.3 2.4 2.5 2.6 SAP-Software im Überblick 27 2.1.1 Standardsoftware versus Individualsoftware 28 2.1.2 Integration 28 2.1.3 Entwicklung von SAP R/3 29 2.1.4 Begriffswelt von SAP 32 Architektur und Skalierbarkeit 36 Applikationsserver 39 2.3.1 Prozesse des SAP-Applikationsservers im Überblick 39 2.3.2 Speicherstrukturen 41 2.3.3 Dispatcher 42 2.3.4 Dialog-Workprozess (DIA) 44 2.3.5 Batch-Workprozess (BTC) 48 2.3.6 Verbucher-Prozess (UPD) 49 2.3.7 Sperrverwaltung mit dem Enqueue-Prozess (ENQ) 51 2.3.8 Message-Server-Prozess 52 2.3.9 Gateway-Prozess 52 2.3.10 Ausprägung einer Instanz 52 SAP-Administratioh 53 2.4.1 Profildateien und Start des Systems 53 2.4.2 Softwarepflege 55 2.4.3 Administration der Datenbank 56 2.4.4 Datensicherung 57 2.4.5 Performanceoptimierung 59 SAP und Softwareentwicklung 60 2.5.1 ABAP-Framework 60 2.5.2 Java im SAP-Kern 64 2.5.3 Internet Transaction Server 65 2.5.4 Remote Function Call (RFC) 66 Zusammenfassung 67 7
3.1 Grundlagen der Datenbanktechnologie 69 3.1.1 Motivation und Geschichte 69 3.1.2 Relationales Datenmodell und SQL 76 3.1.3 Kurzer Überblick über SQL 80 3.1.4 Implementierungstechniken für DBMS 85 3.2 Entwicklung von Oracle 88 3.3 Werkzeuge für den Oracle-Administrator 91 3.3.1 sqlplus 91 3.3.2 isqlplus 93 3.3.3 Oracle Enterprise Manager 94 3.4 Oracle-Kern 96 3.4.1 Oracle-Prozesse 97 3.4.2 Oracle-Hauptspeicherstrukturen 101 3.4.3 Oracle-Dateisystem 104 3.4.4 Tablespace-Konzept von Oracle 106 3.4.5 Weitere wichtige Dateien 118 3.4.6 Zusammenspiel von Prozessen und Speicherstrukturen 125 3.4.7 Zugriff auf Oracle mit Oracle Net 129 3.4.8 Anfrageoptimierung 136 3.4.9 Datensicherung und Wiederherstellung 144 3.4.10 Benutzer und Berechtigungen 153 3.4.11 Monitoring einer Oracle-Instanz mit dem Enterprise Manager 158 3.5 Zusammenfassung 159 4.1 Prozesse von SAP und Oracle 162 4.1.1 Systemstart 164 4.1.2 Beziehungen zwischen den Prozessen 174 4.1.3 Kommunikation zwischen SAP-Instanzen und Oracle-Prozessen 176 4.1.4 Log-und Trace-Dateien 178 4.1.5 Systemstopp 184 4.2 Voraussetzungen auf Betriebssystemebene 186 4.2.1 Benutzer, Gruppen und Umgebungsvariablen (UNIX).. 191 4.2.2 Oracle-Client 194 4.2.3 SAP-Kernel 200 8
4.3 Authentifizierung zwischen SAP und Oracle 205 4.3.1 Datenbankbenutzer 205 4.3.2 Anmeldeverfahren 207 4.3.3 Berechtigungen in der Datenbank 213 4.3.4 Sicherheitsaspekte 214 4.4 SAP-Tablespaces 218 4.4.1 Tablespace-Layout 218 4.4.2 Tablespace-Typen 224 4.4.3 Objektzuordnung und Objektparameter 225 4.4.4 Reorganisation von Tabellen und Tablespaces 227 4.5 Administration von Oracle mit den BR*Tools 233 4.5.1 Entwicklung und Inhalt 234 4.5.2 Umgebung, Optionen und Log-Dateien 236 4.5.3 BRTOOLS und BRCUI 241 4.5.4 BRCONNECT 245 4.5.5 BRSPACE 249 4.5.6 Parameterpflege für Oracle 253 4.6 Zusammenfassung 259 5.1 Vom Produkt zur Lösungslandschaft 261 5.2 Planungskriterien im Überblick 263 5.2.1 Bauliche Infrastruktur 264 5.2.2 Servertechnologie und -plattformen 269 5.2.3 Storage und SAN-Infrastruktur 273 5.2.4 Backup 277 5.2.5 Frontend 279 5.3 Hoch Verfügbarkeit 284 5.4 IT-und Systemsicherheit 289 5.5 Erweiterung einer bestehenden Landschaft 296 5.6 Zusammenfassung 298 6.1 Standardsoftware und Änderungen am Standard 300 6.2 Grundlagen der Softwarelogistik 303 6.2.1 Daten im SAP-System 303 6.2.2 Systemlandschaft 308 6.2.3 Change and Transport System (CTS) 312 6.2.4 Aufzeichnung von Änderungen 315 6.2.5 Änderungsaufträge (Change Requests) 317 9
6.2.6 Transport Management System 321 6.2.7 Transportwege und Transportschichten 327 6.3 Änderungsmanagement für Customizing-Einstellungen 334 6.4 Änderungsmanagement für Entwicklungen 339 6.5 Transportmanagement 344 6.5.1 Transport Organizer Tools 344 6.5.2 Transportstrategie 345 6.5.3 Importqueue und Importpuffer 353 6.5.4 Transporte zwischen Transportgruppen 355 6.5.5 Transporte zwischen Transportdomänen 357 6.5.6 Bedienung des Transportsteuerungsprogramms tp 361 6.5.7 Protokollierung der Transporte 364 6.5.8 Transporte zwischen Unicode- und Nicht-Unicode- Systemen 366 6.6 Tipps und Tricks 367 6.7 Zusammenfassung 368 7.1 Installation 369 7.1.1 Installationswerkzeuge 369 7.1.2 Phasen 373 7.1.3 Unattended Installation 385 7.2 Systempflege 387 7.2.1 Mandantenwerkzeuge 387 7.2.2 SAP Support Packages, Patches und Korrekturen 394 7.2.3 Wartung der Oracle-Datenbank 409 7.2.4 Wartung des Betriebssystems 416 7.3 Upgrades 418 7.3.1 SAP-Upgrade 418 7.3.2 Oracle-Upgrade 436 7.4 Zusammenfassung 438 8.1 Administrative und programmatische Probleme 441 8.2 Analyse administrativer Performanceprobleme 443 8.2.1 Analyse von Hardware und Betriebssystem 444 8.2.2 Analyse der Datenbank 451 8.2.3 Analyse des SAP-Systems 496 8.3 Analyse programmatischer Performanceprobleme: SQL-Optimierung 513 10
8.3.1 Duale Ziele: Funktional und performant 513 8.3.2 Auswirkungen 515 8.3.3 Werkzeuge zur Problemanalyse 517 8.3.4 Detaillierte Analyse von SQL-Anweisungen 520 8.3.5 Königsweg Prävention 525 8.3.6 Indexe für schnellen Zugriff 528 8.4 Zusammenfassung 532 9.1 Monitoring im SAP-Umfeld: Motivation und Umfang 535 9.1.1 Bereiche des Monitorings 536 9.1.2 Monitoring-Probleme 540 9.1.3 Lösungen für ein SAP-Monitoring 541 9.2 Parameter für die Überwachung eines SAP-Systems auf Oracle-Basis 543 9.2.1 Überwachung der Oracle-Datenbank 544 9.2.2 Überwachung des SAP-Systems 560 9.2.3 Überwachung von Hardware und Betriebssystem 577 9.3 Hintergrundjobs im Umfeld des Monitorings 582 9.3.1 SAP-Standardjobs 583 9.3.2 Oracle-Jobs 588 9.4 Zusammenfassung 589 10.1 Was muss gesichert werden? 593 10.1.1 Zusammenspiel der Oracle-Prozesse und -Datenbankobjekte 595 10.1.2 Betriebsmodi der Oracle-Datenbank 600 10.1.3 Archiver Stuck 603 10.2 Datensicherungsmethoden 608 10.2.1 Datenexport 609 10.2.2 Offline-Datensicherung 610 10.2.3 Online-Datensicherung 612 10.3 Wiederherstellungsmethoden 617 10.3.1 Wiederherstellung aus einer Offline-Datensicherung... 621 10.3.2 Wiederherstellung aus einer Online-Datensicherung... 622 10.3.3 Fehlerszenario: Verlust eines normalen Tablespace 623 10.3.4 Partial Restore and Complete Recovery 624 10.3.5 Database Reset 625 10.3.6 Point-in-Time Recovery 626 10.3.7 Füll Restore and Complete Recovery 628 11
10.4 BR*Tools für Backup, Restore und Recovery 629 10.4.1 Datensicherung mit BRBACKUP 632 10.4.2 Sicherung der Redo-Log-Dateien mit BRARCHIVE 643 10.4.3 Wiederherstellung mit BRRESTORE 654 10.4.4 Recovery der Datenbank mit BRRECOVER 660 10.4.5 Nacharbeiten bei einem unvollständigen Recovery 666 10.4.6 BR*Tools und temporäre Tablespaces 668 10.4.7 Disaster Recovery mit den BR*Tools 669 10.4.8 BR*Tools in Windows-Umgebungen 672 10.4.9 Backup-Medien und Volume Management 672 10.5 Oracle Recovery Manager (RMAN) 678 10.5.1 Sicherungen ohne Sicherungsbibliothek 684 10.5.2 Sicherungen mit der SAP-Sicherungsbibliothek 685 10.5.3 Sicherungen mit einer externen Sicherungsbibliothek.. 686 10.6 Weitere Fehlerszenarien 687 10.6.1 Verlust einer Control-Datei 687 10.6.2 Verlust aller Control-Dateien und des Systemund/oder Rollback-Tablespace 688 10.6.3 Verlust des System- und/oder Rollback-Tablespace 694 10.6.4 Verlust einer Datendatei eines temporären Tablespace 696 10.6.5 Verlust einer Online-Redo-Log-Datei 698 10.6.6 Verlust einer Online-Redo-Log-Gruppe 700 10.6.7 Verlust aller Online-Redo-Log-Dateien 704 10.6.8 Verlust von Offline-Redo-Log-Dateien 705 10.6.9 Zusammenbruch der Datenbank während einer Online-Sicherung 706 10.7 Backup-Strategien 709 10.7.1 Partielle Sicherungen 715 10.7.2 Zwei-Phasen-Datensicherung 717 10.7.3 Standby-Datenbanken 718 10.7.4 Split-Mirror-Datenbanken 721 10.8 Tipps und Tricks 726 10.9 Zusammenfassung 728 11.1 Verwendung von Java in SAP-Systemen 730 11.2 Architektur der J2EE Engine 733 11.2.1 Interner Aufbau 739 11.2.2 Zusammenspiel des Java-Stacks mit der Datenbank 747 11.2.3 Monitoring 757 12
11.3 Java-Softwarelogistik 768 11.3.1 SAP NetWeaver Development Infrastructure 768 11.3.2 SAP-Komponentenmodell 771 11.3.3 Patchen von Java-Instanzen und-applikationen 773 11.4 Tipps 779 11.4.1 Profilparameter für die J2EE Engine 779 11.4.2 Parameter des Property-Files 782 11.4.3 Minimalkonfiguration der Datei instance.properties... 784 11.5 Zusammenfassung 786 12.1 Grundlagen und Konzepte des Data Warehousing 787 12.1.1 OLAP und OLTP 787 12.1.2 Data-Warehouse-Architektur 789 12.1.3 Extraktion, Transformation, Laden 790 12.1.4 Datenstrukturen und Entwurf eines Data Warehouse.. 793 12.1.5 Operationen zur Datenanalyse 796 12.1.6 Data Mining 797 12.1.7 Nutzen 798 12.2 Data Warehousing mit Oracle 798 12.2.1 Technologie und Architektur 799 12.2.2 Konzepte und Spracherweiterungen in Oracle 804 12.2.3 Werkzeuge 806 12.3 SAP NetWeaver Bl: Ein Überblick 808 12.3.1 Business Content 810 12.3.2 Datenmodellierung 811 12.3.3 Modellierung von Business-Intelligence-Objekten 816 12.3.4 Grundlagen der Datenbeschaffung 820 12.3.5 Laden von Stamm- und Bewegungsdaten 823 12.3.6 Delta-Extraktion aus Quellsystemen 826 12.3.7 Reporting 828 12.4 SAP NetWeaver Bl auf Oracle 833 12.4.1 Bl-Tabellen und -Indexe in der Oracle-Datenbank 835 12.4.2 Konfiguration der Oracle-Datenbank 839 12.4.3 PGA und temporärer Tablespace 842 12.4.4 Statistiken für Bl-Tabellen 847 12.4.5 Sonstiges 848 12.5 Zusammenfassung 851 13
A Flugdatenmodell 857 A.1 SQL-Skript zum Anlegen der Datenbank 857 A.2 Perl-Skript zum Erzeugen des Datenbankinhalts 858 B Allgemeine Optionen der BRTools 859 C Literatur 865 D Die Autoren 867 Index 869 14