Inhaltsverzeichnis

Die Oracle Datenbank Welt

Sammlung von kurzen Notizen zu den Themen rund um die Oracle Datenbank.

Übersicht über die wichtigsten Komponenten einer Oracle Datenbank Umgebung:

 Die Oracle Datenbank in der  Übersicht

Historie der Versionen:

Was für ein Feature ist in welcher Version von Oracle verfügbar : https://apex.oracle.com/database-features/

Architektur Übersicht ⇒ https://www.oracle.com/webfolder/technetwork/tutorials/architecture-diagrams/19/database-technical-architecture.html

Bzgl. dem Ende des Supports siehe Node ⇒ Release Schedule of Current Database Releases (Doc ID 742060.1)

 Oracle Support Stand Oktober 2021 Stand 2021

 Oracle Support Stand  August 2023 ( MOS Note: 742060.1 für den letzten Stand der Graphik - Aug 22, 2023. )

Die Datenbank Version auslesen ⇒ * Datenbank Version unter Oracle 12c versus 19c auslesen

Das Data Dictionary abfragen ⇒ https://www.viskey4you.com/


Das Oracle Forum

Feature Requests eintragen:


Die Deutsche Oracle User Group

Zeitschrift:



Lizenz Fragen

Oracle Database 12.1.0.2 Standard Edition (SE2) - einschränkungen - Sollten auch noch für die Version 18 gelten!

siehe ⇒ http://www.oracle.com/us/corporate/pricing/databaselicensing-070584.pdf

Oracle Database Standard Edition 2 may only be licensed on servers that
have a maximum capacity of 2 sockets. When used with Oracle Real Application Clusters, Oracle Database Standard Edition 2 may only be
licensed on a maximum of 2 one-socket servers. In addition, notwithstanding any provision in Your Oracle license agreement to the
contrary, each Oracle Database Standard Edition 2 database may use a maximum of 16 CPU threads at any time. When used with Oracle Real
Application Clusters, each Oracle Database Standard Edition 2 database may use a maximum of 8 CPU threads per instance at any time. The
minimums when licensing by Named User Plus (NUP) metric are 10 NUP licenses per server

VMware Problem ⇒ https://www.doag.org/de/home/news/oracle-lizenzierung-in-virtualisierten-umgebungen-laut-doag-legal-council-koennten-zweifel-an-der-wirksamkeit-der-vertragswerke-von-oracle-begruendet-sein/detail


Oracle einfach bedienen und administrieren

Die Modi der Datenbank


Die Job Steuerung der Datenbank


Backup und Recovery

OraPowerShell Powershell und Bash Scripts + meine SQL Script Library

Grundlagen:

12c Rac

Die Datenbank ID zurücksetzen:

EXEC dbms_backup_restore.zerodbid(0);

User Management in der Datenbank


Das Netzwerk Protokoll der DB SQL*Net

Der Listener

Berechtigungsprobleme:

Der Datenbank Service

An der Datenbank anmelden

Netzwerk/Firewall und SQL*Net

Datenbank Connection Pooling

SQL*Net und IPv6

SQL*Net Trace

Ab 11g den Listener dynamisch tracen

#Bei Bedarf am Listener entsprechend anmelden
LSNRCTL> set current_listener LISTENER_GPI
 
#einschalten
LSNRCTL> set trc_level 16
 
# Wo liegt der Trace
LSNRCTL> show trc_file
 
#Ausschalten
LSNRCTL> set trc_level 0

siehe ⇒ „SQL*Net listener dynamic tracing (Doc ID 1940914.1)“


Der Oracle Connection Manager

12c

21c

High Availability Clustering mit Pacemaker


SQL*Plus / SQLC und SQL Scripts

SQL*Plus:

SQL Scripte:

Command Line SQLcl 12c - Nachfolger für SQL*Plus

Alternativen:


SQL Tuning

11g

12c

18c

AWR

chained Rows Problem

siehe ⇒ http://www.akadia.com/services/ora_chained_rows.html

Analysieren:

ANALYZE TABLE T_03_COLL_1_IMMO_PRIV COMPUTE STATISTICS;

resmgr:pq queued | enq: JX - SQL statement queue

In einer 12c Umgebung kann beobachtet werden das ein Truncate plötzlich mit dem Wait Event „esmgr:pq queued“ hängt. Hier auf das Verhältnis von PARALLEL_SERVER_TARGET zu den anderen Parallel Parametern achten!

Siehe dazu auch:

SQL Trace

Last Test

Wait Events

Blogs:

Oracle:

Tuning Blogs


Wartung


Benutzer Verwaltung

MS AD Integration

Weitere Themen


Features der Datenbank

Oracle Text

VPD

Standby DB und Data Guard

Alternative Lösung für die SE ⇒ http://standbyone.de/

Streams

External Table

Heterogeneous Connectivity - Oracle Database Gateway for ODBC

Java in der Datenbank

Oracle Fail Safe Unter Windows kann die Datenbank in die Microsoft Failover Cluster Technologe integriert werden

Workload Management

User APPQOSSYS siehe ⇒ Database Quality of Service Management User's Guide

Mehr:

Oracle Multitenant ab Oracle 12c

Table Compression

EE Feature + Option!


OEM - Enterprise Manager - Grid Control

Lizenz

siehe https://docs.oracle.com/cd/E24628_01/doc.121/e24474/ch10_base_functionality.htm#OEMLI335

„The base installation of Enterprise Manager Cloud Control 12c includes several features free of charge with the purchase of any Oracle software license or Support contract.”

„Users of Standard Edition and Enterprise Edition databases can use the Base Framework features and the Base Database Management Features. The following items are included as part of base database management features of Enterprise Manager Cloud Control 12c“

⇒ Die Basisfunktionalität kann auch schon bereits in der Standard Edition eingesetzt werden!

Alternativen

Alternative in APEX „Oracle Apex Database Monitor“:

12c Database

OEM 12c

Links zu 12c

Server Side THRESHOLDS

Support Portal:

AWR Warehouse für 12c

11g dbconsole

11g

Ora-600 Monitoring


Datenbank Installation

Leistet Oracle Support für den Betrieb der DB auf VMware? Wenn genug Lizenzen für die Umgebung vorhanden sind inzwischen JA!

Siehe

Zeichensatz:

Die wichtigste Entscheidung bei der Installation ist die richtige Wahl des Zeichensatzes der Datenbank

Welcher Zeichensatz ist in meiner DB aktuell eingestellt:

Was für möglichen Zeichensätze werden unterstützt:

Ansible im Oracle Umfeld

Ansible (https://www.ansible.com/) ist ein Open-Source Werkzeug zur Konfiguration und Administration, insbesondere im Umfeld von RedHat Basierenden Server Systemen.

Docker

Einfach mal ohne das ganze Installationsdrama arbeiten ⇒ fertige Docker Images verwenden ⇒ https://container-registry.oracle.com/pls/apex/f?p=113:1:16736952150739::NO:::

23c

Oracle Datenbank 23c

21c

Oracle Datenbank 21c Linux

19c

Basis Vorbereitung:

Oracle Datenbank 19c Unter MS Windows

18c

Oracle 18c auf Linux:

Oracle 18c XE auf Linux

12c

Basis Vorbereitung:

Installation:

ASM:

Linux:

Windows:

Probleme:

12c Standard Edition (September 2015)

11g

Basis Vorbereitung:

Installation:

Problem und Nacharbeiten

Support nodes:

10g


Auditing


Sicherheit

User

User soll das gesamte DD lesen können:

GRANT SELECT ANY DICTIONARY TO scott;

In 12c etwas besser eingeschränkt, Tabellen wie $USER können nicht mehr gelesen werden! ⇒ http://www.petefinnigan.com/ramblings/how_to_grant_all_privs.htm

Spalte oracle_maintained in den Datenbank Views verwenden:

SELECT username,oracle_maintained FROM dba_users;

TDE

Log4j

Passwort

Rollen

Securtiy Checklisten:

Securtiy Empfehlungen Oracle 12c:

Security Scanner

Applicationssicherheit

Mit UTL_FILE/Directory und External Table zum DBA ⇒ http://ora-600.pl/art/privilege_escalation_2.pdf

PL/SQL

Oracle Security im Netz

IDS Intrusion Detection System - mit der Oracle Datenbank

Für Linux tripwire http://www.tripwire.org/

Für Oracle Linux 7:

wget https://ftp.fau.de/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
yum repolist
yum install tripwire
tripwire-setup-keyfiles
tripwire --init

See also: https://books.google.de/books?id=5piJAwAAQBAJ&pg=PA123&lpg=PA123&dq=tripwire+oracle+linux+download&source=bl&ots=zDozMLq_zQ&sig=kjHdmxbSnfxPiLy6JNCYc9Pr_9I&hl=en&sa=X&ved=0ahUKEwjmycnY98TLAhVMG5oKHYYnBMUQ6AEIXzAI#v=onepage&q=tripwire%20oracle%20linux%20download&f=false

Allgemein

Ideen

Tactics and Techniques representing the MITRE ATT&CK® Matrix for Enterprise

Produktvergleiche Sicherheitsoftware
SSL Zertifikate
Blogs
Online Scanner
USB

Migration und Upgrade

19c

Support Nodes:

18c

12c R1 nach R2

11g R2 nach 12 R1

Vor dem Upgrade muss geklärt werden, ob ein 1zu1 Upgrade erfolgen soll oder bereits jetzt auf wenigstens Single Tenant umgestiegen werden soll.

Für eine Übersicht siehe

11g R1 nach 11g R2

10g nach 11g

9i nach 10g

Allgemein

Wichtige Support Dokumente der Datenbank für die Versionsverwaltung

Security:

12.1 und kleiner

ab 12.2

19c

Welche Pache müssen on top auf den RU eingespielt werden?

OPatch

Checks:

Patch Rollback 12c

Linux

Windows:


Import und Export

Import/Export IMP/EXP

DataPump

SQLLDR


Real Application Cluster

Ab 19c kein Bestandteil mehr der SE2 Edition ! EE + Extra RAC Lizenz muss erworben werden!

Siehe Lizenzinformation unter ⇒ https://docs.oracle.com/en/database/oracle/oracle-database/19/dblic/Licensing-Information.html#GUID-0F9EB85D-4610-4EDF-89C2-4916A0E7AC87

Gute Übersicht ⇒ https://www.oracle.com/webfolder/technetwork/tutorials/architecture-diagrams/19/rac/main.html

Installation

18c

12c R2

12c R1

11G

Support Infos:

10G

Upgrade

11G

Betrieb

Autostart beim nächsten Boot verhindern

Auf dem Knoten, der nicht mehr starten soll!

#als root!
cd $GRID_HOME/bin/
./crsctl disable crs
# wieder einschalten mit
./crsctl disable crs
#prüfen
./crsctl check crs
srvctl tracen
export SRVM_TRACE=true
srvctl .... 
19c
12c

RH7 Doku ⇒ https://www.redhat.com/en/files/resources/en-rhel-deploy-oracle-rac-database-12c-rhel-7.pdf

11g

Übersicht Clusterware siehe hier www.twg-it.de

Support:

Timing Issues:

10g

Entwicklung RAC

Bücher Oracle RAC


Multitenant Architecture - Plugable Database

Ab Oracle 21 ein Muss! Oracle 19c letzte Version mit „normalen“ Betriebsmodus!

Lizenz ⇒ siehe https://docs.oracle.com/en/database/oracle/oracle-database/19/dblic/database-licensing-information-user-manual.pdf auf Seite 11 ⇒ „For all offerings, if you are not licensed for Oracle Multitenant, then you may have up to 3 user-created PDBs in a given container database at any time“

Bei jeder Option sind dann also 3 Plugable Datenbank pro DB in der Basis Lizenz enthalten.


Oracle Internals

Mehr oder weniger Spass mit Oracle

11g

Architektur

Problemstellungen

Space Management:


Qracle ASM

Performance

Oracle ASM Utiltiy um Metricen einzusammlen von Bertrand Drouvot:

Migration

Wartung

Installation

SQL*Net

Probleme

Hilfreiche Befehle

ASM Header von den Platten auslesen

$GRID_HOME/bin/kfed read /dev/oracleasm/disks/VOT1

EOUC
DOAG

TV:

Oracle Blogs
Oracle Poster - 12c DD Overview
Oracle Websessions:
Tools
Foren und Oracle DBA Webseiten
Oracle News Aggregator
cheat sheets
Dokumentation

Bücher


Intern


Topic SQL Scripte

Die neusten SQL Scripte liegen hier ⇒ http://orapowershell.codeplex.com/SourceControl/latest#sql/help.sql

2010/05/05 09:03Probleme beim Sichern der DB lösen In regelmäßigen Abständen sind die Logfile der Sicherung zu überprüfen. (siehe: /opt/oracle/admin/<sid>\backup\backup_<tag>.log) Mit dem Script am Ende der Seite regelmäßig prüfen, ob die Flash Recovery Area nicht vollläuft!
2012/03/22 17:30Anzeige der per Foreign Key referenzierten Tabellen Wie erkennt man bei einem „ORA-02449: unique/primary keys in table referenced by foreign keys“ die abhängigen Tabellen? Lösung: SELECT table_name ,constraint_name ,status ,owner FROM all_constraints WHERE r_owner = :ref_owner AND constraint_type = 'R' AND r_constraint_name IN (SELECT constraint_name FROM all_constraints …
2010/04/30 13:00Flashback aktivieren DB:10g Aufgabe: Auf einer 10g Cluster Datenbank soll Flashback aktiviert werden. Die Datenspeicherung erfolgt über eine Oracle ASM Instance. Bisher wurde die Recovery Area Parameter nicht verwendet. Die Platte für die Archivelogs und RMAN Backups ist gross aber langsam, die Flashback Logs soll auf einer schnellen 100GB Lun abgelegt werden. Die Flashback Logs lassen sich aber nicht einzeln konfigurieren.
2010/04/29 18:45Ungültige Objekte in der DB "reparieren" In einer produktiven Datenbank sollten kleine Objekte ungültig sein und die Entwickler sollten bei ungültigen Objekten diese „reparieren“. Folgendes Schript hilft die schlimmsten Fehler zu beseitigen, wenn z.b. der Oracle Enterprise Manager hunderte von ungültigen Objekten anmerkt.
2010/04/26 16:24Per SQL Spool Scripte erzeugen SQL*Plus im Detail unter Einführung SQL*Plus Synonyme erzeugen ##SOURCESCHEME## mit dem Schemanamen ersetzen -- Setup some SQLPlus parameters. SET heading off -- Spool everything to an file to reuse the generated SQL. spool synonymspool -- Do the Query. SELECT 'CREATE SYNONYM ##DESTINATIONSCHEME##.' || TABLE_NAME || ' FOR ##SOURCESCHEME##.' || TABLE_NAME || ';' FROM cat WHERE TABLE_NAME NOT LIKE 'BIN%'; -- Close spool. spool off
2013/07/23 13:38Größe einer Tabelle analysieren Oft ist es notwendig, sich neben der reinen Größe einer Tabelle auch den Füllgrade anzeigen zu lassen: (Die aktuelle Version liegt immer hier OraPowerShell SQL Library - space.sql ) set pagesize 300 set linesize 250 set verify off define lnum = "format 9G999G999D99" define num = "format 99G999" define snum = "format 9G999" ttitle left "Space Usage of a table" skip 2 define ENTER_OWNER='&TABLE_OWNER' define ENTER_TABLE='&TABLE_NAME' column segment_nam…
2010/05/05 09:03Die aktuellen SQL Statements in der DB auswerten Der einfachste Ansatz zum finden von „problematischen“ SQL Statements ist die Auswertung der in der SGA gecachten Statements nach den evlt. Problemfällen. Dabei werden die Statements gesucht, die oft aufgerufen werden UND viele Resourcen (CPU und Lesevorgänge) verbrauchen.
2010/05/05 09:03Statistiken anlegen und überwachen 1. Systemweite Statistik In der DOAG News 01/2013 (S.52) ist ein sehr gut gemachter Artikel von Thorsten W. Grebe über die Problematik mit den Oracle Systemstatistiken zu finden: “Glücksspiel Systemstatistiken - Das Märchen vom typischen Workload“.