Sie sind hier: Oracle Datenbanken
Zurück zu: EDV-Schulungen & Termine
Weiter zu:
Einstieg in Oracle SQL
Oracle PL/SQL Datenbankentwicklung Grundlagen
Oracle PL/SQL Datenbanken Fortgeschrittene
Oracle Datenbank Administration
Oracle Netzwerk Administration
Oracle - Backup & Recovery
Performance Tuning für Oralce Datenbanken
Allgemein:
Sitemap
Übernachtung in Gießen
Wegbeschreibung
Downloads
Kontakt-Formular
Call-Back anfordern
AGB
Disclaimer
Impressum / Kontakt
Oracle Database ist eine relationale Datenbank der Firma Oracle.
Oracle Database (auch Oracle Database Server, Oracle RDBMS o.ä.) ist eine Datenbanksystem-Software.
Ein Oracle Datenbanksystem kann sowohl relationale Daten, als auch objektrelationale Daten speichern. Weiterhin besitzt es die Fähigkeit zur Verarbeitung und relationalen Transformation von XML-Datenstrukturen (XMLDB, XDK). Es implementiert die ACID-Eigenschaften, bietet gute Skalierbarkeit und einen sehr großen Funktionsumfang.
Ein Oracle Datenbankmanagementsystem (DBMS, RDBMS, ORDBMS) eignet sich wegen seiner Architektur und Skalierbarkeit auch für eine große Zahl gleichzeitig aktiver Benutzer. Die Oracle Database Software ist für fast alle heute verwendeten Betriebssysteme erhältlich und als Express-Edition (XE) kostenlos nutzbar. Allerdings ist die Express-Edition stärker als die kostenlose DB2-Version eingeschränkt, weil sie Java nicht unterstützt.
Der Oracle Database Server in aktuellen Versionen unterstützt 8 Exabyte in einer Datenbank und weist damit eine Speicherkapazität auf, die derzeit (2006) kaum von einzelnen Organisationen ausgeschöpft werden kann.
Das Speichern nichtrelationaler Daten (Video, Musik, Dokumente, Fax etc.) wird mit BLOBs (binary large objects) und CLOBs (character large objects) unterstützt. Die Indizierung von zahlreichen nichtrelationalen Datenformaten wird bereits mitgeliefert. Die Erweiterung um eigene programmatische Indizierungen wird unterstützt. Raumbezogene Daten können relational abgelegt werden, räumliche Indizierungen und Abfragen werden unterstützt (SPATIAL Option).
Weitere wichtige Grundeigenschaften sind: plattformübergreifende Unterstützung verteilter Datenbanken, Data Warehouse Funktionalität, Messaging, OLAP- und Data-Mining, intelligente Datensicherung (wahlweise mit Block Change Tracking), Java Stored Procedures (nicht in der XE-Version), Unterstützung regulärer Ausdrücke in Abfragen, Versionierung von Tabellen (Langzeittransaktionen), Virtual Private Database Funktionalität und zahlreiche Mechanismen für den Datenschutz.
Mit dem Release 10g wurde die Vision eines Oracle Grid (siehe auch Grid-Computing) weiter umgesetzt: Auch das kleine "g" im Release-Namen steht für Grid. Kernstück des Oracle Grid ist der Aktiv/Aktiv-Cluster, der von Oracle unter dem Namen Real Application Cluster (RAC) vertrieben wird. Oracle bietet seit 10g eine eigene Cluster Manager-Software unter dem Namen Oracle Cluster Ready Services an. Diese wurde erstmals in 9i zunächst für Linux, später auch für Windows freigegeben. Seit Oracle 10g steht diese für jede von Oracle unterstützte Plattform zur Verfügung.
Zusammen mit DB2 und MS SQL-Server gehört Oracle zu den Marktführern im RDBMS-Segment. Im Großrechner-Bereich sind Sun-Fire-Maschinen mit dem Unix-System Solaris oder IBM-Maschinen häufig verwendete Plattformen. Im Midrange-Bereich werden nahezu alle Unix-Systeme unterstützt und eingesetzt, daneben aber auch OpenVMS. Linux wurde neben Solaris als strategische Hauptplattform längere Zeit favorisiert und findet sehr starke Verbreitung. Windows wird aufgrund der hohen Verbreitung strategisch ebenfalls sehr stark unterstützt.
Das Datenbanksystem entspricht, wie die meisten Datenbanksysteme, nicht vollständig dem jeweils gültigen SQL-Standard. Dies ist unter anderem in der Tatsache begründet, dass die ersten Versionen von Oracle programmiert wurden, bevor SQL erstmals von der ANSI festgeschrieben wurde. Doch wurden sukzessive ANSI-Standards erfüllt. So wird neben der proprietären Syntax, die auch weiterhin zur Verfügung steht, inzwischen die Join-Syntax unterstützt.
Hier noch einige Probleme, vor denen man bei einer Portierung zwischen Datenbanksystemen eventuell steht bzw. über die man stolpert, wenn man den SQL-Standard kennt:
Da SQL nur eine deskriptive Sprache ist, wurde eine proprietäre prozedurale Erweiterung von SQL mit dem Namen PL/SQL entwickelt. PL/SQL steht für Procedural Language / Structured Query Language. PL/SQL Kommandos können ad hoc als anonyme Blöcke eingegeben werden oder in Form von sogenannten 'Stored Procedures' in der Datenbank abgelegt werden.
Für Studienzwecke ist die Oracle-Datenbank auf der Herstellerseite frei erhältlich. Auch die anderen Produkte der Firma Oracle stehen dort zur Verfügung.
Ein Oracle Datenbanksystem besteht aus einem Datenbankmanagementsystem (DBMS) und einer Datenbank (Data Files, Control Files, Redo Log Files). Im Einzelnen kann das System wie folgt charakterisiert werden:
Diese besteht zumeist aus Dateien in einem Filesystem, es werden jedoch auch Raw Devices oder per Oracle ASM (Automatic Storage Management) verwaltete Diskgroups verwendet. Man unterscheidet die Dateiarten:
Data Files
die eigentlichen Datendateien mit den Dateninhalten.
Redo Log Files
sehr schnell schreibbare Dateien, die als Transaktionslogs dienen und die die Datenblockänderungen (Change-Vektoren) von Transaktionen aufnehmen. Diese gespeicherten Change Vektoren dienen zur Wiederherstellung von Datenblöcken, falls ungeplant oder beabsichtigt das Datenbankmanagementsystem terminiert werden muss. Noch nicht in die Data Files übertragene, festgeschriebene Changes können so rekonstruiert und nachgefahren werden (roll forward). Im Anschluss daran werden alle Änderungen nach dem letzten erfolgreichen Festschreibvorgang (check point) zurückgeschrieben (roll back).
Control Files
Dateien, die u. a. die Struktur- und Zustandsinformation der Datenbank enthalten. Hierzu zählen die System Change Number (SCN) sowie die Pfade und Namen aller Data Files und Redo Log Files.
Ein laufendes und aktiv von Clients verwendetes Oracle Datenbankmanagementsystem besteht aus
Die Oracle Server Prozesse nehmen Datenbankabfragen (Query) oder Datenmodifikationsanweisungen (DML) in der Sprache SQL (oder anderen Sprachen) von den Datenbank-Clients entgegen, führen diese Aufträge aus und liefern Ergebnisdaten zurück. Dabei agieren die Oracle Server Prozesse teilweise direkt auf den Data Files, teilweise übertragen sie jedoch auch Aktivitäten auf die Hintergrundprozesse der Oracle-Instanz.
Die Oracle-Instanz stellt gemeinsamen Arbeitsspeicher in Form von Shared Memory, sowie zahlreiche darauf zugreifende Hintergrundprozesse bereit. Die wichtigsten Hintergrundprozesse sind:
Die Standardeinstellung der Isolationsebene einer Oracle-Datenbank ist "Read committed", d. h. eine Abfrage sieht alle Daten konsistent in dem Zustand, in dem sie zu Beginn der Abfrage festgeschrieben waren. Man kann auch die Isolationsebenen "Serialize" oder "Read only" (kein SQL-Standard) für eine Session oder eine Transaktion festlegen. Die anderen beiden im SQL-Standard definierten Isolationsebenen ("Read uncommitted", "Repeatable read") werden nicht explizit unterstützt. Durch die Speicherung von Rollback-Informationen führen lesende Zugriffe nie zu Sperren der schreibenden Zugriffe (non-blocking reads) und umgekehrt (non-blocking writes).
Werkzeuge zur Entwicklung und Datenbankverwaltung werden sowohl von Oracle als auch von Drittherstellern zur Verfügung gestellt.
Werkzeuge vom Hersteller:
Der Aufruf von SQL*Plus erfolgt - unabhängig von der verwendeten Betriebssystemplattform - durch Eingabe von sqlplus. SQL*Plus stand mit den ersten Oracle-Versionen zur Verfügung. Aufgrund der Orientierung an Kommandozeilen sind umfangreiche SQL-Kenntnisse erforderlich. Mit iSQL*Plus stellt Oracle auch ein Webfrontend für SQL*Plus bereit.
Werkzeuge von Drittherstellern:
Oracle lizenzierte für lange Zeit seine Produkte nach der Anzahl von sogenannten Named Usern, also benannten Benutzern - wobei es egal ist, wie viele Nutzer gleichzeitig am System arbeiten, sondern wie viele am System arbeiten können - oder von Prozessorkernen (nicht wie zum Beispiel Microsoft nach der Anzahl der physikalischen CPU-Sockel) , seit einiger Zeit jedoch auch nach Anzahl der Sockel, in der Standard Edition und der Standard Edition One. In der wesentlich höherwertigen Enterprise Edition wird weiter das pro-Core-Lizenzverfahren (2 Cores = 1 Lizenz bei Intel-Systemen, bei Sparc benötigt man eine Lizenz für 4 Cores) angewendet.
Die Express Edition ist kostenlos nutzbar.
| Nach oben springen. |