Video: Medieninformatik - Betriebssysteme - Teil 2 - 12 2024
Die Speicherverwaltung ist eine wichtige Komponente bei der Arbeit mit Instanzen in Ihrer Datenbank. Oracle 12c bietet drei Möglichkeiten, den Speicher in Ihrer Instanz zu verwalten:
-
Automatisch , indem Oracle die ganze Arbeit
-
Manuell erledigt, indem er die einzelnen Parameter für die verschiedenen Speicherbereiche abstimmt
-
Kombination aus Automatik und Handbuch , indem Sie Ihr Wissen darüber, wie Dinge funktionieren, verwenden, die Beratungsinfrastruktur von Oracle nutzen und Oracle dazu bringen, einige Bereiche
Eine kurze Anmerkung zur Automatisierung von Oracle. Durch die letzten Versionen von Oracle wurde die Datenbank automatisiert in Bereichen, die zuvor manuell und manchmal sogar langwierig waren. Das soll nicht heißen, dass es bald keine besonderen Fähigkeiten mehr braucht, um eine Oracle-Datenbank zu verwalten. Genau das Gegenteil: Wenn einfachere Operationen automatisiert werden, können Sie sich als DBA auf die erweiterten Funktionen konzentrieren.
Es war ein großer Erfolg, automatisierte Funktionen für Clients zu implementieren. Es gibt uns die Möglichkeit, uns auf Dinge wie Hochverfügbarkeit und Sicherheit zu konzentrieren, Bereiche, die nahezu in vollem Umfang Aufmerksamkeit erfordern. Gott sei Dank müssen Sie nicht stundenlang beobachten, welche SQL-Anweisungen vorzeitig aus dem gemeinsamen Pool altern, was zu Leistungsproblemen führt.
Es wird empfohlen, den Speicher in Oracle 12c automatisch zu verwalten.
Wenn Sie Ihre Datenbank erstellen, können Sie einen neuen Parameter festlegen, der fast die gesamte Speicheroptimierung aus den Händen nimmt: MEMORY_TARGET. Durch die Einstellung dieses Parameters werden alle Speicherbereiche automatisch dimensioniert und verwaltet. Nachdem Sie show parameter memory_target in SQL * Plus (die in Oracle verfügbare SQL-Befehlszeilenschnittstelle) eingegeben haben, sehen Sie diese Ausgabe auf dem Bildschirm:
NAME TYPE VALUE -------- ---------------------------- ----------- ----------- ------------------- memory_target big integer 756M
Mit der automatischen Speicherverwaltung können Sie die Größe des Speichers auf dem System erfassen und dann entscheiden, wie viel Sie verwenden möchten. für die Datenbank.
Es ist nie offensichtlich, welchen Wert Sie als Ausgangspunkt wählen sollten. Beantworten Sie diese Fragen, um den Wert festzulegen:
-
Wie viel Speicher steht zur Verfügung?
-
Wie viele Datenbanken werden letztendlich auf der Maschine sein?
-
Wie viele Benutzer befinden sich auf der Maschine? (Wenn viele, Sie 4 MB pro Benutzer für den Prozess-Overhead zuweisen.)
-
Welche anderen Anwendungen werden auf dem Computer ausgeführt?
Bevor die Benutzer auf den Computer gelangen, sollten Sie nicht mehr als 40 Prozent des Speichers für Oracle-Datenbanken in Anspruch nehmen.Verwenden Sie diese Formel:
(GB des Speichers ×. 40) / Anzahl der eventuellen Datenbanken = GB für MEMORY_TARGET pro Datenbank
Beispiel: Wenn Ihr Computer über 8 GB Speicher verfügt und zwei Datenbanken mit ähnlicher Je 100 Benutzer, Sie hätten diese Gleichung: (8 × 40) / 2 = 1. 6 GB für MEMORY_TARGET pro Datenbank.
Um festzustellen, ob Sie genug Speicher haben, gibt Oracle Ihnen einige Hinweise, wenn Sie wissen, wo Sie suchen müssen. Es heißt der Speicherzielberater. Finden Sie es über die Befehlszeile in Form der Sicht V $ MEMORY_TARGET_ADVICE. Sie finden es auf der Startseite der Datenbanksteuerung, indem Sie auf Advisor Central> Speicherberater> Beratung klicken.
Was auch immer Sie für die Einstellung MEMORY_TARGET wählen, ist nicht der gesamte Speicher, den Oracle verwendet. Deshalb sollten Sie eine Vorstellung davon haben, wie viele Sitzungen es geben wird, bevor Sie die endgültige Entscheidung treffen.
Zum Beispiel deckt dieser Parameter nur den von SGA und PGA verwendeten Speicher ab. Jede einzelne Sitzung, die eine Verbindung zur Datenbank herstellt, benötigt Speicher, der mit dem Betriebssystem oder Serverprozess verknüpft ist. Dieser Speicherbedarf summiert sich auf. Einer unserer Kunden hat fast 3.000 gleichzeitige Verbindungen, die etwa 16 GB Speicher außerhalb des SGA und PGA auffressen. Der Client-Computer verfügt über 64 GB Speicher und der MEMORY_TARGET ist auf 16 GB festgelegt.