Oracle bringt mit Version 23c einige interessante Features für Entwickler. Zwei davon, die zwar keine komplett neuen Möglichkeiten bieten, aber an der ein oder anderen Stelle doch hilfreich sind, sollen hier vorgestellt werden.
Will man Gruppenfunktionen zusammen mit einzelnen Spalten verwenden, so muss grundsätzlich nach allen Einzelspalten gruppiert werden, auch wenn beispielsweise eine Id immer auch den zugehörigen Namen und alle übrigen Werte des Datensatzes impliziert. Das erzeugt einen Overhead, der ab Version 21c teilweise umgangen werden kann.
Derzeit gibt es die Version 23c als Free Developer Edition zum Download. Also eine gute Gelegenheit, die neuen Features der Datenbank Version 23c auszuprobieren, wie zum Beispiel Automatic Transaction Rollback. Mit diesem Feature können Sie Ihre Transaktionen priorisieren und somit laufende Transaktionen über eine weitere logische Ebene steuern.
Analytische Funktionen sind weniger verbreitet als beispielsweise Gruppenfunktionen, erfreuen sich aber im Data Warehouse-Umfeld großer Beliebtheit. Mit Version 21c kamen auch Syntax-Erweiterungen zu analytischen Funktionen, die in diesem Tipp beschrieben werden sollen.
Auf der DOAG 2022 Konferenz + Ausstellung wurde von Oracle der Nachfolger der Datenbank Version 19c vorgestellt: 23c. Die Oracle Datenbank 21c war lediglich ein Innovation Release, welches für technische Tests konzipiert, aber nicht für den produktiven Einsatz ausgelegt ist. Oracles Code Namen für 23c lautet „App Simple“, da die neue Version das Betreiben Ihrer Datenbank vereinfachen soll. Oracle präsentierte für 23c zahlreiche neue Features, ein paar werden in diesem Artikel vorgestellt. Einige der Features kommen in überarbeiteter Form von 21c. Zurzeit befindet sich 23c noch in der Betaphase.
Gerade bei größeren Abfragen ist es immer sinnvoll, Text zu "sparen“, wenn dies ohne zu große Komplexität und Performance-Einbußen möglich ist. Bis einschließlich 19c konnte man dies hauptsächlich über PL/SQL-Funktionen und Views in SQL abbilden. Hierbei funktionieren Views nur auf Tabellenebene und klassische PL/SQL-Funktionen führen in der Regel zu einem Kontext Switch. Mit dem in 20c hinzugekommenen SQL Macros gibt es hier nun eine weitere Möglichkeit.
Die FOR-Schleife in Oracle war bisher im Vergleich zu anderen Sprachen recht begrenzt in ihren Möglichkeiten. Mit Version 21c hat sich das drastisch geändert. Die neue Version bringt eine Menge an Erweiterungen. In diesem Tipp soll die neue Vielfalt anhand einfacher Beispiele erläutert werden.
Seit letztem Jahr ist die Oracle Version 21c verfügbar. Da es sich um ein Innovation Release handelt, sollte ein Upgrade nur erfolgen, wenn einzelne neue Features unbedingt notwendig sind. Allen anderen wird empfohlen aktuell auf 19c zu upgraden. Der nächste zu erwartende Long Term Release ist 23c. Prägnante und stark nachgefragte Features, werden von 21c auf 19c backported.
In diesem Artikel stelle ich drei interessante Features vor:
Nach zig Jahren hat Oracle das Verhalten des listener.log angepasst und mit der Version Oracle 19 ein Logrotate auch bei den Textdateien eingeführt, das jedoch nicht 100%ig deaktiviert werden kann.
Problem
Auf einem Kundensystem, in dem pro Tag mehrere Gigabyte Logdateien pro Listener anfallen, müssen die Plaintext Dateien fortlaufend über mehrere Monate gehalten werden. Die listener.log Datei soll dazu einmal pro Tag abgezogen und komprimiert werden. Leider fallen seit dem Update auf die Oracle Version 19 ohne Anpassung des Listeners jetzt mehre einige hundert Megabyte große Dateien pro Tag an, die fortlaufend nummeriert werden.
Seit Jahren gibt es in den Nachrichten Meldungen bezüglich Blockchains. Überall hört man von Assets und Firmen, die sich dieser Technologie bedienen. Jetzt hat auch Oracle das Konzept Blockchain aufgegriffen. Doch wie genau funktioniert eine Blockchain in einer Datenbank? Wie administriert man diese und welche Vorteile / Nachteile hat sie? Das schauen wir uns im Detail an.
Es war bis jetzt ein relativ aufwendiges Verfahren, die “least privilege” Best Practices in einer Datenbank umzusetzen, wenn nicht schon beim Datenbankdesign starker Wert darauf gelegt wurde. Mit dem neuen Feature „Privilege Analysis“ in der Version 19c liefert Oracle ein Tool, mit dem man auch bei einem schon abgeschlossenen Datenbankdesign einen guten Ansatzpunkt für das nachträgliche Einführen der “least privilege” Best Practices hat.
Schon vor längerer Zeit wurde von Oracle angekündigt, dass das Package DBMS_JOB deprecated wird. Was sollten Sie wissen bzw. beachten, wenn Sie ihre Datenbank auf 19c migrieren wollen?
Records sind in PL/SQL geläufiger als Objekttypen. Nur das Handling war bisweilen etwas mühsam, da jedes Feld einzeln zugewiesen werden musste. Da wünschte man sich doch gelegentlich etwas Analoges zum Konstruktor bei Objekttypen. Mit Version 18c geht dieser Wunsch nun in Erfüllung. :)
SQL-Statements in Applikationen, die BIND Variablen verwenden, weisen eine Menge Vorteile gegenüber den Applikationen auf, die lediglich Literale in ihren SQL-Statements verwenden. Zu diesen Vorteilen zählen u. a. ein reduziertes hard parsing und damit verbunden geringere Zugriffskonflikte auf Speicherbereiche im SHARED POOL als auch ein geringerer Speicherverbrauch insgesamt, da Cursoren gemeinsam benutzt werden können. In diesem Zusammenhang spielt auch das Feature Adaptive Cursor Sharing (ACS) seit seiner Einführung in der Version 11g R1 eine signifikante Rolle. Doch was verbirgt sich dahinter? Dieser Monatstipp soll dem Leser einen Einblick in die Funktionsweise des Features ACS verschaffen.
Bereits im August 2017 hat Oracle die Information preisgegeben, dass ab Version 12c R2 eine neue Patch Release Strategie zum Tragen kommen wird. Aber was hat es mit dieser eigentlich auf sich?
Da wir immer wieder nach der Syntax zu (Outer) Joins gefragt werden, beschäftigen wir uns in diesem Tipp einmal mit den Neuerungen in Version 12c und den Einschränkungen in den vorangegangenen Versionen.
Der SQL Developer als Oracle-proprietäres Tool erfreut sich mittlerweile großer Beliebtheit. Entwickler, die den SQL Developer auch zum Debuggen nutzen, werden bei 12c-Datenbanken jedoch erst einmal eine neue Hürde überwinden müssen.
Ab Version 12c können Spalten ausgeblendet werden, indem man sie als "invisible" deklariert. Das ist sowohl beim Anlegen einer Tabelle oder Spalte möglich als auch nachträglich.
Wer je Daten für eine Web-Applikation bereitstellen musste, kennt das Problem der Pagination. In der Regel holt das Frontend ja nur die Daten, die auf eine Seite passen, und erst wenn mehr angefordert werden, werden auch mehr geholt.
Die Heat Map zeichnet auf Blockebene den Datenzugriff und die Veränderungshäufigkeit auf.
Mit diesem Wissen kann man Daten, die selten verwendet oder verändert werden, an Ort und Stelle komprimieren und auf einen anderen Tablespace (auf ein langsameres und billigeres Medium) verschieben.
Der Result Cache ist ein - leider auf die Enterprise Edition beschränktes - Feature, das mit Version 11g eingeführt wurde. Er ist sowohl in SQL für Select-Befehle als auch in PL/SQL für Funktionsaufrufe nutzbar. Die Idee dahinter ist in beiden Fällen, dass das Ergebnis bei der ersten Ausführung gespeichert wird und bei weiteren Aufrufen der Befehl selber nicht mehr ausgeführt, sondern das Ergebnis aus dem Cache abgerufen wird. Um Tom Kyte zu zitieren: "Everyone knows the fastest way to do something is – to not do it".
Jeder, der Skripte zur Überwachung einer Oracle Datenbank oder für Prozessabläufe in Zusammenspiel mit einer Oracle Datenbank einsetzt, kennt das Problem:
Mit Version 11.2.0.2 wurde das altbekannte Package UTL_SMTP erweitert. Die wichtigste Neuerung liegt darin, dass jetzt auch SSL-verschlüsselte Mails verschickt werden können. Daneben wurde die Authentifizierung am Mailserver vereinfacht, dafür gibt es jetzt einen eigenen Aufruf.
Mit Version 11g Release 2 wurde ein sehr nützliches Feature zur Überwachung von Datenbank-Jobs eingeführt: die automatische Mailbenachrichtigung. Die Einrichtung ist denkbar einfach: Zunächst muss ein Administrator den zu verwendenden Mailserver einmalig konfigurieren.
In einem<link http: www.muniqsoft.de tipps monatstipps jahr-2002 maerz-2002.htm internal-link> früheren Beitrag<link http: www.muniqsoft.de tipps monatstipps jahr-2002 maerz-2002.htm internal-link> wurde das Tracing einer Datenbank-Session bereits generell beschrieben, daher soll hier nicht näher auf die Grundlagen eingegangen werden. Neben den dort vorgestellten Methoden gibt es seit Version 10g noch das Package DBMS_MONITOR, das diverse Möglichkeiten zum Tracing bietet.
Seit Oracle 10g gibt es ein Feature namens „Silent Installation“. Es dient der Installation auf Kommandozeilenebene und der Generierung von Installations-Vorlagen. Mit dem Verzicht auf die grafische Darstellung der Installation, ist diese auch ein bisschen schneller als sonst.
Mit dem Release 11.2 hat Oracle eine Erweiterung des CREATE TABLE Statements eingeführt. Es handelt sich um die verzögerte Segmenterzeugung oder DEFERRED SEGMENT CREATION.
Was macht dieses neue Feature? Wird eine neue Tabelle erzeugt, werden nur die Metainformationen angelegt, aber noch kein Segment im Tablespace erzeugt. Das bedeutet, dass...
Sie wollten schon häufiger Datenbankdateien von einem Server A auf den Server B kopieren und waren aber gerade nicht in der Lage sich lokal mit einem der Server zu verbinden und anschließend den anderen zu mounten? Oder es war Ihnen schlichtweg zu umständlich? Dann haben wir hier vielleicht eine ganz praktische Lösung für Sie.
Viele Applikationen verwenden die Möglichkeiten zur Mailversendung aus Oracle heraus, sei es mit UTL_SMTP, sei es mit UTL_MAIL. Bis Version 10g reichte es, wenn der Eigentümer der Sende-Prozedur das EXECUTE-Recht auf das jeweilige Package hatte. Soll auf 11g migriert werden, so erfordert dies einen zusätzlichen administrativen Aufwand.
Wie schon im Tipp des Monats Oktober 2008 angekündigt, beschäftigen wir uns diesen Monat mit der Wiedergabe von der mit dem Oracle Workload Capture aufgenommenen Last...
Mit dem Patch 10.2.0.4 hat Oracle die Möglichkeit geschaffen, Last aufzuzeichnen, um diese dann auf einer 11g Datenbank wiederzugeben.
Dieses Feature eröffnet natürlich fantastische Möglichkeiten im Bereich der Migration auf 11g. Hierbei bietet das hinzugekommene Database Workload von Oracle die perfekte Grundlage für "lebensnahe" Tests in einem Nicht-Produktivsystem.
In unserer Know-How Datenbank finden Sie mehr als 300 ausführliche Beiträge zu den
Oracle-Themen wie DBA, SQL, PL/SQL, APEX und vielem mehr.
Hier erhalten Sie Antworten auf Ihre Fragen.
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklärst du dich damit einverstanden, dass wir Cookies verwenden.