Oracle 26ai Multitenant - da führt kein Weg dran vorbei
Shownotes
Oracle 26ai Multitenant - da führt kein Weg dran vorbei
Eine Lok, viele Container
Robert kommt frisch aus einer Woche voller Docker-Container und fragt sich, warum die Oracle-Datenbank das eigentlich auch selbst kann. Johannes holt die Metapher, die hängenbleibt: Die Container-Datenbank (CDB) ist das Schiff, die Lokomotive oder der LKW. Die einzelnen Pluggable Databases sind die Container, die huckepack mitfahren. Jede PDB ist für sich autark, ans Laufen kommt sie aber nur durch den Master-Container.
Warum hat Oracle das gebaut? Weil jede klassische Datenbank rund 40 Prozesse mitbringt und kräftig Memory und Storage verbraucht. Johannes erzählt von einem Kunden, der über 140 Testdatenbanken auf einen Server packen wollte und feststellte, dass die Datenbanken nur noch mit sich selbst beschäftigt waren. Multitenant teilt SGA und Hintergrundprozesse und holt so mit weniger Ressourcen mehr heraus.
Spannend wird es bei den Vorteilen im Alltag. PDBs lassen sich in Sekunden deployen statt in Stunden, sie lassen sich aus einer Vorlage klonen, und mit Copy-on-Write entstehen PDBs, die nur ihre eigenen Änderungen wegschreiben und kaum Platz brauchen. Jeder Entwickler kann seine eigene Datenbank bekommen. Natürlich sprechen die beiden auch über Noisy Neighbors, also die Sorge, dass sich eine entgleiste PDB auf alle anderen auswirkt. Johannes ordnet ein, warum das Problem nicht neu ist.
Dann die Geldfrage. Es gibt zwei Multitenants: die Architektur, die kostenlos bis zu drei PDBs erlaubt, und die kostenpflichtige Option, die bis zu 4096 PDBs freischaltet und rund ein Drittel der Datenbanklizenz kostet. In der Standard Edition gilt dieselbe Drei-PDB-Grenze, die PDB Seed als Vorlage bleibt immer kostenlos. Zum Schluss geht es um CDB- gegen PDB-Sicht, gemeinsam vererbte User, das kuriose Detail, dass es zwar ein Unplug, aber keinen Plug-Befehl gibt, sowie um Auto-Upgrade und versionsübergreifende Migration, von denen Johannes ein bekennender Fan ist.
Die Kernbotschaft: Multitenant ist handfeste Technik mit echtem Nutzen und längst kein Hexenwerk. Und weil es ab Oracle 26ai ohnehin nichts anderes mehr gibt, lohnt es sich, jetzt damit vertraut zu werden.
Diese Folge in der Übersicht:
- Die Metapher: CDB als Schiff, Lok oder LKW, die Pluggable Databases als Container, die huckepack mitfahren.
- Warum Oracle Multitenant gebaut hat: rund 40 Prozesse je klassischer Datenbank, geteilte SGA und Hintergrundprozesse sparen Ressourcen.
- Weniger Administrationsaufwand, wenn viele PDBs in einer CDB stecken: aus DBA-Sicht eine Datenbank, aus Anwendersicht viele.
- Schnelles Deployen in Sekunden, Klonen aus einer Vorlage und Copy-on-Write PDBs, die nur ihre Änderungen wegschreiben.
- Noisy Neighbors richtig einordnen: das Problem gibt es auch bei vielen Standalone-Datenbanken auf einem Server.
- Zwei Multitenants: die kostenlose Architektur bis drei PDBs und die kostenpflichtige Option bis 4096 PDBs für rund ein Drittel der Lizenz.
- Standard Edition: ebenfalls drei PDBs frei, die PDB Seed als Vorlage bleibt immer kostenlos.
- CDB gegen PDB: die CDB-Views liegen über den DBA-Views, gemeinsame User werden in die PDBs vererbt.
- Unplug ohne Plug: es gibt keinen Plug-Befehl, stattdessen Create Pluggable Database from Manifest, sonst nur Drop.
- Versionsübergreifende Migration und Auto-Upgrade, Johannes' Lieblingswerkzeug, und der Hinweis: ab Oracle 26ai gibt es nur noch Multitenant.
Weiterführende Links und Ressourcen:
- ora2know Website
- Oracle Multitenant (Oracle)
- Neue Features in Oracle Database 26ai (New Features Guide)
- Oracle Multitenant Administrator's Guide (26ai) (Dokumentation)
- Oracle Database Upgrade Guide (26ai) (Dokumentation)
- AutoUpgrade und Datenbank-Upgrades (Oracle)
- Multitenant-Artikel auf oracle-base.com (Tim Hall)
Die Podcast-Hosts und Director:
- Johannes Ahrends: Oracle ACE, DBA, ora2know. Web: carajandb.com
- Robert Marz: Oracle ACE, IT-Architect, ora2know. Web: robbie.databee.org
- Oliver Pyka: Oracle ACE, Freiberufler, ora2know. Web: pyka.de
Über O wie Datenbank:
Der deutschsprachige Oracle-Datenbank-Podcast von ora2know. Johannes Ahrends, Robert Marz und Oliver Pyka bringen zusammen über 90 Jahre Oracle-Erfahrung mit und sprechen alle vier Wochen über das, was DBAs, Entwickler und IT-Entscheider wirklich bewegt: Migration, Architektur, neue Features, Betrieb und Strategie rund um die Oracle Datenbank. Praxisnah, meinungsstark und ohne Marketing-Sprech.
Über ora2know:
Wissen teilen, Netzwerk aufbauen. ora2know ist eine unabhängige Community für Oracle-Datenbank-Administratoren und -Entwickler im deutschsprachigen Raum. Unser Ziel ist der praxisnahe Austausch von Wissen und Erfahrungen rund um Oracle Database, Oracle APEX und Oracle AI. Ohne kommerzielle Interessen, getragen von Enthusiasmus und gegenseitiger Hilfe. Ob DBA, Entwickler oder Architekt: ora2know verbindet Oracle-Profis in Deutschland, Österreich und der Schweiz.
Über diese Podcast-Produktion:
Dieser Podcast ist eine TON.EINS Produktion.
Transkript anzeigen
00:00:03: Gute Johannes, wie geht's?
00:00:12: Heute müssen wir mal über Multitenant reden.
00:00:15: Sag mal was ist denn das überhaupt so?
00:00:17: Erklärst mir also ob ich fünf wäre!
00:00:18: Ich bin ja Entwickler und hab von diesem ganzen DBA-Kram nicht so richtig viel Ahnung.
00:00:22: Moin Robert schön mal wieder mit dir zu reden.
00:00:24: jetzt macht immer wieder Spaß wenn wir uns treffen.
00:00:27: Ja, Multitenent ist wirklich ein interessantes Thema aber vorher muss sich noch ein bisschen etwas los werden.
00:00:33: Ich habe in einer der vorherigen Folgen erzählt, dass die FIPS-Compliance und das TLS Gebiete sind von Oracle XIX.
00:00:43: Wo es gegebenenfalls dazu kommen kann, dass man XIX nicht mehr einsetzen kann.
00:00:48: Da hat Oracle jetzt etwas Neues gebracht,
00:00:50: d.h.,
00:00:51: es gibt eine Crypto Roadmap Und in dieser Roadmap wird davon ausgegangen, dass es Backpots gibt sowohl für TLS Iii als auch für die FIPs Compliance.
00:01:01: noch in der Neunzehner, also im zweiten Halbjahr dieses Jahres für die Version neunzehn.
00:01:07: Das muss ich jetzt mal zeigen was das wird.
00:01:09: Den Link dazu haben wir in den Show Notes natürlich kommentiert aber ansonsten können wir losgehen mit Multitenant ist ein tolles Thema.
00:01:17: Johannes!
00:01:17: Ich habe diese Woche ganz viel mit Containern gearbeitet und habe meine Anwendung modularisiert und hab ganz viele kleine Container rauf- und runtergefahren Und unter anderem wollte ich auch die Datenbank in einem Container starten, aber das geht doch auch irgendwie anders.
00:01:30: Die Datenbank kann es doch selber oder?
00:01:32: Ja genau also neben dem dass Oracle auch als Datenbank kontinuisiert werden kann ist es eigentlich so dass diese Multitenant Architektur um die es geht ein eigener Container isst Das heißt eine Technologie wo ich einen Master habe und ganz viele Einschübe die als Container dann wirken So ähnlich wie ein Lkw mit einem Container oder einen Schiff, mit einer ganzen Haufen-Container.
00:02:00: Oder dazwischen der Eisenbahn die ein paar wenige hat.
00:02:03: Die Datenbank ist eine eigene Containerhost?
00:02:06: Ja genau!
00:02:06: Die Datenmang ist im Endeffekt die Lokomotive oder das Schiff oder eben auch der LkW.
00:02:12: Ich habe vielleicht einen Container also eine Datenbank in diesem Schiff... ...oder ich hab ne ganze Haufen.
00:02:18: Das liegt eben da dran wie viele Multitenent Möglichkeiten nicht verwenden will.
00:02:24: Das heißt jede Datenbank ist für sich autark, aber ans Laufen, ans Fliegen oder ans Fahren kommt sie nur durch den Master Container die sogenannte Containerdatabase.
00:02:36: und warum hat Orackel das überhaupt gebaut?
00:02:38: Ich glaube dass es eine bisschen eigene eigene Unzulänglichkeiten möchte ich mal sagen weil es einfach so ist, dass in der Vergangenheit in einer klassischen Datenbank jede Datenbank so um die vierzig Prozesse hat sehr viel Memory verbraucht, sehr viel Storage verbrauchte und wenn ich dann was weiß ich ein paar hundert Datenbanken habe und mir ist untergekommen von einem Kunden der über hundred-vierzig Datenbank auf einem Server hat laufen lassen wollen als Testsysteme.
00:03:06: Und der ist da nach hinter gekommen.
00:03:08: naja dann laufen da so ein paar zigtausend Prozesse und es viel Memory allokiert und im Endeffekt kann man mit der Datemann nicht mehr arbeiten weil die Daten auch mit sich selber beschäftigt sind.
00:03:20: Und das hat den Ausschlag gegeben, dass man gesagt hat, man muss diese Datenbanken ein wenig zusammendampfen um mit weniger Ressourcen mehr produzieren zu können.
00:03:32: Also wenn wir die SGR und die Background-Prozesse teilen, sparen wir Ressorten?
00:03:36: Das verstehe ich!
00:03:37: Aber wie sieht es denn dann mit dem Patching & Upgrade aus?
00:03:40: D.h.,
00:03:40: ich muss hier einmal für alles upgraden
00:03:42: oder?!
00:03:43: Wenn man von Oracle ausgeht, dann war's eigentlich von Anfang an so, daß man gar nicht mehr patcht muss... Sondern das war alles automatisch.
00:03:51: Man macht ein Anplug von der Datenbank in einem einen Container mit der älteren Version, macht den Plug-in in die neuere Version und wie von Zauberhand ist dann die Datenbank entsprechend migriert abgegradet was auch immer Das hat bis zum heutigen Tage leider nicht geklappt.
00:04:08: Das war im Wunschdenken.
00:04:09: Mit Oracke XX soll es allerdings tatsächlich funktionieren.
00:04:14: Ob man das braucht oder ob das der Grund sein sollte mit Containern zu arbeiten, das war ich mal zu bezweifeln.
00:04:22: Eigentlich ist es wirklich die Möglichkeit, mit wenig Administrationsaufwand eine große Menge von Datenbanken zu verwalten.
00:04:30: Das
00:04:30: klingt ja erstmal richtig gut aber so in der Theorie klingt vieles richtig gut.
00:04:34: Gibt's denn echte Vorteile, die ich mir mit dem Multitenant einkaufe oder einfach nur erhöhte Administrationsauffand?
00:04:41: Wie gesagt, es kann auch den Administrationsauswand verringern Aber das liegt einfach daran, wie ich es einsetze.
00:04:49: Ich habe zum Beispiel in einem Projekt die Setzen für jede Plugable Database – so werden diese einzelnen Datenbanken genannt – eine eigene Container ein, also eine eigene CDB.
00:05:02: Es gibt aber andere Unternehmen, die haben dann eine CDB und haben da drin fünfzig, sechszig, siebzig Plugable-Databases.
00:05:10: Das heißt von der administrativen Seite hab' ich nur eine Datenbank Von der Anwenderseite habe ich aber fünfzig, sechszig, siebzig unabhängige Datenbanken.
00:05:20: Was natürlich den Administrationsaufwand drastisch reduziert.
00:05:25: Aber da kommen bei mir sofort so Gedanken hoch wie Neusi-Nebers und sowas.
00:05:29: wenn sich die eine schlecht verhält dann wirkt das auf alle anderen aus oder?
00:05:32: Ja!
00:05:33: Das ist definitiv so.
00:05:35: Aber das haben wir auch stand heute auch.
00:05:36: Wenn du hundert Datenbaken auf einem Server betreibst jeder mit seiner SGA, jeder mit seinen I.O und jeder mit seinem CPU-Verbrauch, dann hast du auch da Neusi Neighbors.
00:05:46: Das heißt, dann müsstest du schon wirklich hingehen und auf einem Server nur eine Datenbank betreiben.
00:05:51: Und wenn du davon ausgehst, dass heute ein Server – was weiß ich nicht?
00:05:54: – vierundzwanzighundertachtundzwanzig zweihundertsechsundfünfzig CPUs hat.
00:05:59: Terabyte an Ramm!
00:06:00: Gut das kostet heute immenses Geld aber nichtsdestotrotz die Datenbanken sind ja größtenteils gar nicht so groß.
00:06:07: Betreibst du in der Datenbank von zehn Gigabyte Zwar was stehen, der in die Millionen geht.
00:06:15: Und gibt es noch mehr Vorteile?
00:06:16: Also ich meine, was kann ich dann mit Plugable Database besser und schneller machen, was sich mit Standelauen Datenbanken nicht kann?
00:06:21: Du kannst diese sehr viel schneller deployen!
00:06:24: Weil das ist ja immer etwas, was Monorakl nachsagt – dass erstellen einer Datenbank dauert ewig, da brauche ich Stunden für.
00:06:31: Wenn ich mit Postgres arbeite, dann ist die Datenbank innerhalb von Sekunden da.
00:06:36: Genauso ist es mit Plugables Databases.
00:06:38: auch wenn ich eine Plugable database anlegen will sage ich create Plugable Database und dann dauert es drei, vier, fünf Sekunden.
00:06:46: Und dann ist die Datenbank vorhanden und nicht keiner mit loslegen.
00:06:49: Die Datenbank für sich ist komplett isoliert.
00:06:53: Das heißt eine Plugable database weist nicht dass es noch andere auf dem Server gibt.
00:06:58: Geschweige in der Datenbank.
00:06:59: Ich denke ja immer in meinen Entwicklungsgeschichten und wenn man wirklich losentwickelt und am Schema arbeitet hat jeder Entwickler gerne seine eigene Datenbank Für Sich.
00:07:07: hilft uns da Multi-Tannen auch?
00:07:08: Ja natürlich!
00:07:10: Einerseits, wie schon gesagt du kannst halt einfach per Create Plugable Database eine neue Plugable database erstellen.
00:07:17: Du kannst sie aber natürlich auch klonen.
00:07:18: das heißt ich kann sagen erstelle mir eine Plugable Data Base aus einer vorhandenen oder was auch geht je nachdem was für ein Storage Manner drunter hat dass man sogenannte Copy and Write Plugable databases macht Das heißt, Plugable Databases die noch nicht mal einen eigenen Story benötigen sondern nur für die Änderung ihrer Version wegschreiben.
00:07:40: Ja copy and write finde ich ja ein cooles Konzept.
00:07:42: Allein schon die Abkürzung des COW also co-fliegende Kühe habe ich meinen Vortrag gehabt kommt immer sofort in meinem Kopf wenn ich darüber nachdenke und das spart ja echt Plattenplatz auch nachher weil nur die Äänderungen gespeichert werden.
00:07:53: richtig
00:07:54: So sagst die Theorie, leider muss ich gestehen dass ich noch keinen Kunden habe der das tatsächlich anwendet.
00:07:59: Es ist immer wieder sehr gern genommen und wird dann auch.
00:08:02: ja könnte man machen sollten wir tun aber dann bleibt es auch dabei.
00:08:06: Das hat aber noch einen anderen Grund.
00:08:09: dieser Grund ist Dass es eigentlich zwei Multitenents gibt wie zweieinerseits die multitenent architektur und andererseits die multitinent Option.
00:08:19: okay und wo ist da der unterschied?
00:08:21: streng genommen ist das eine Einwurf kleiner und größerer Münzen, das andere ist Velao.
00:08:27: Da musst du jetzt aber mal ein bisschen genauer werden.
00:08:30: Oracle ist nicht so ganz günstig, das wissen wir alle.
00:08:32: Und an welcher Stelle müssen wir Münzen einschmeißen?
00:08:35: Was kriegen wir umsonst?
00:08:36: Genau!
00:08:36: Umsonst oder sagen wir lieber kostenlos, bekommen wir die Multi-Tended Architektur.
00:08:41: Das heißt diese Architektor erlaubt es mir mit einer CDB bis zu drei Plugable Databases zu betreiben.
00:08:48: Das heisst also im Endeffekt habe ich da so eine Minilokumotive mit drei Anhängern und auf jedem Anhänger ist ein Container.
00:08:57: Und wenn ich das aufbauen möchte bis auf Zweihundertsechsund Fünfzig oder gar Viertausend Sechsund Neunzig Plugable Databases, also Container... Wenn ich also einen riesen Übersichtschiff haben möchte dann muss sich das bezahlen denn dann brauche die Multitenner Option.
00:09:13: Und die kostet nen Zehntel der normalen Datenbank.
00:09:15: Lizenz?
00:09:16: Schön wär's!
00:09:17: Gehen wir mal eher von nem Drittel aus.
00:09:19: Und ich bin schon ganz froh, dass Orake zumindest gesagt hat drei sind frei und nicht so wie es anfangs war.
00:09:27: Dass man nur eine Plagabedater bis benutzen konnte mit der multitenen Option das hat die Anwender eher abgeschreckt oder die dbs als dass sie gewillt waren damit zu arbeiten.
00:09:39: So als Vorteil ist aber auch wenn ich wenn ich nur drei habe dann kann ich ja immerhin klonen dauert das jetzt Lange, also ist das wirklich ein Kopieren oder geht das fix?
00:09:47: Und vor allem kann ich meine, dass es ja so die Schmerzen, die Kunden meistens haben.
00:09:51: Kann ich meine Klone dann auch wieder aktualisieren und also wieder an den Ursprungsdaten mal angleichen.
00:09:55: Es gibt dort viele verschiedene Wege damit zu arbeiten.
00:09:59: Du kannst wie gesagt einen Copy-on-Write machen.
00:10:02: Es gibt auch... Das hat mal ein Kollege gesagt ein Data Guard für Arme, nämlich dass du dir eine zweite Plugable Database auf einem anderen Server unter einem anderen CDB erstellst und die per automatischen Refresh immer wieder aktualisierst.
00:10:20: Das ist zum Beispiel eine tolle Methode um so Plugable databases umzuziehen auch versionsübergreifend.
00:10:27: Und es gibt dazwischen eben das ganze Cloning und Kopieren und Zipfile erstellen so weiter und sofort.
00:10:35: Also es gibt diverseste Methoden mit den Plugable Databases zu arbeiten.
00:10:40: Okay, das waren jetzt mal die Vorteile oder zumindest ein Teil von den Vorteilen aber gibt's auch Nachteile.
00:10:45: also wo tut Multitenen so wirklich weh?
00:10:47: Du hast ja genug Projekte gesehen wo es lief und wo es nicht lief
00:10:50: Ja also nicht laufen kann ich eigentlich nichts sagen.
00:10:53: glücklicherweise habe ich noch kein Projekt gehabt wo wir gesagt mussten dass hat nicht funktioniert.
00:10:58: ganz im Gegenteil wenn die DBAs hingehen und sagen, wir wollen Multi-Tenant einführen.
00:11:03: Dann sagen viele in der Anwendungsentwicklung oder von den Softwarehäusern, das müssen wir mal testen, wenn wir mal gucken ob das funktioniert.
00:11:10: Und in der Praxis ist es so dass mir noch nicht untergekommen ist, dass es mal nicht funktioniert hätte.
00:11:16: Natürlich kann es sein, dass auf Grundlage der Version zum Beispiel die Password Algorithmen nicht mehr ziehen weil die Kunden immer nur nach großem Kleinschreibung keine Unterscheidungen haben.
00:11:28: Aber das ist in der Natur der Sache und hat nichts mit Multitenne zu tun.
00:11:31: Es gibt aber definitiv Nachteile, man muss sich damit erst mal auseinandersetzen.
00:11:36: Man braucht eine Schulung, man braucht einen Workshop, man brauche eine Einleitung... ...man muss gucken dass man sich damit vertraut macht, dass man nicht mehr mit einem Connect Slash SSDWR auf die Datenbank draufkommt sondern eben nur noch auf den Container.
00:11:52: Okay!
00:11:53: Sonst noch was oder war es das?
00:11:55: Es gibt mit Sicherheit eine ganze Reihe weiterer Informationen, die man sich besorgen kann.
00:12:00: Es gibt die Möglichkeit mit Plugable Databases auch über große Entfernung zu arbeiten.
00:12:06: es gibt jetzt mit Version sechs und zwanzig die Möglichkeit Plugable databases einzeln per Data Guard zu replizieren halte ich nicht für eine optimale Methode.
00:12:17: das ist glaube ich sollte mal noch einmal überdenken ob dass die richtige Vorgehensweise ist.
00:12:23: aber Man wird sich zwangsläufig damit beschäftigen müssen, denn das hatten wir auch schon mal erwähnt.
00:12:29: In XXVI gibt es nichts mehr anderes als Plugable Database.
00:12:32: Das heißt diese Architektur die wir heute noch in den Unternehmen vorfinden eine Datenbank und da ist alles drin.
00:12:40: davon muss man sich mit Oracke XXVI definitiv verabschieden.
00:12:44: Das heisst wir müssen uns alle dran gewöhnen mit Multitannen zu arbeiten.
00:12:47: jetzt?
00:12:48: Genau!
00:12:48: Es sollte zum normalen Sprachgebrauch eines DBAs gehören dass er weiß wie er eine Datemann erstellt, vielleicht sogar wie er die droppt.
00:12:56: Was man eigentlich eher selten macht.
00:12:58: in der Vergangenheit war so ein Drop Database eher eine Ultima Ratio und hat man nicht gerne gemacht.
00:13:03: bei Plugable Databases kommt das durchaus mal vor dass man sagt Drop Plugable database create Plugable databases Und daran muss man sich gewöhnen damit muss man sie auseinandersetzen.
00:13:13: Witzig ist übrigens es gibt kein Plug.
00:13:16: Man kann zwar eine Plugable Data Base anplacken also aus dem Aus der CDB herausziehen Aber das Gegenteil davon, also das Plug-in gibt es als Befehl so nicht.
00:13:27: Das heißt was mache ich dann?
00:13:28: Wegschmeißen!
00:13:29: Es ist tatsächlich so wenn ich einen Unplug Plugable Database gemacht habe, dann kann ich als nächsten Befeil nur sagen Drop Database oder Drop Plugable database Dann ist sie weg.
00:13:42: logischerweise, das bedingt dieser Name aber in ihren Strukturen, d.h.
00:13:48: den Data Files sind Sie noch vorhanden Und ich kann dann wieder sagen, create Plugable Database from.
00:13:54: Dann habe ich einen Manifest für diese Plugable database und dann kann ich sie wieder einhängen.
00:13:58: Aber es war tatsächlich beim ersten Mal ausprobieren schon eine Erfahrung.
00:14:04: was geht nach dem Anplug?
00:14:05: ja nur ein Drop.
00:14:06: Okay!
00:14:08: Ich gehe relativ viel auf Konferenzen.
00:14:09: so wie du auch immer wenn ich da war und mir einen Multitannenvortrag angehört habe hieß das immer man kann damit sehr schön über Versionen weg migrieren aber dann war immer die Einschränkung dass Klappt nur innerhalb derselben Matcher-Version.
00:14:22: Das hat sich doch jetzt geändert, oder?
00:14:24: Genau!
00:14:24: Da gibt es einige Erweiterungen mit ORAKE XX, einige Verbesserung aber auf der anderen Seite das hängt vielfach von den Möglichkeiten ab die man sich selber gibt und allen voran hängt es vom Auto Upgrade ab.
00:14:38: also ich bin ja ein absoluter Fan dieses Oracle Tools Auto Upgrad egal ob man jetzt hingeht und sagt man will ein Patch einspielen oder ob man sagt, man will eine Migration nach Multitenant machen.
00:14:52: Oder man will die Datenbank innerhalb von Multitenent auf ein anderes Release heben.
00:14:57: Dafür ist Auto-Upgrade einfach ein geniales Tool.
00:15:01: Cool!
00:15:01: Lass uns nochmal kurz über die Lizenzen regeln.
00:15:03: also Oracle ist teuer.
00:15:05: das Wissen war in Enterprise Edition habe ich jetzt gelernt kriege ich drei PDBs frei und ab der vierten muss sich die Multi-Tenant Option licensieren.
00:15:13: wie sieht es denn in der Standard Edition aus?
00:15:15: Ist das da auch so oder ist das da anders?
00:15:17: Nee, da ist es tatsächlich genauso.
00:15:18: Also in der Standard Edition habe ich auch drei Plugable Databases für Lau, wobei man auch da noch ein bisschen präziser sein muss.
00:15:26: Es gibt eine Plugable-Database die sogenannte PDB Seedt.
00:15:30: Die ist immer kostenlos weil sie einfach nur als Kopie herhalten muss beziehungsweise als Basis für neue Kopien.
00:15:38: Die muss man nicht lizencieren.
00:15:40: und dann ist die maximale Anzahl von Plugable database eben drei, die ich selber definieren, selber erstellen, selber benutzen kann.
00:15:49: Dieses Seed-Database ist ja im Prinzip die Basis die Iran gezogen wird wenn ich mir eine neue Datenbank erstelle.
00:15:55: Kann ich die manipulieren?
00:15:56: Also kann ich da mal eine eigene Seeddatenbank basteln oder muss sich immer auf dem Standardaufsatz in den Oracle mitliefert?
00:16:01: Oh das ist eine schöne Frage!
00:16:03: Einerseits kann man sie tatsächlich selber erstellten zumindest scheint es erstmal so wenn man in die Oracke Dokumentation geht.
00:16:10: dann gibt's den Befehl Create Seed Database.
00:16:13: Das ist aber was ganz anderes.
00:16:14: Das gehört zu dem Thema Application Container, das wollen wir hier nicht stressen weil ich habe noch keinen einzigen Kunden gesehen der das tatsächlich einsetzt oder du?
00:16:23: Ich
00:16:23: hab' tatsächlich mal mit gespielt, aber in der Praxis habe es noch nicht eingesetzt.
00:16:26: Ich find's ein cooles Konzept, aber irgendwie die Anwender und die Entwickler davon zu überzeugen ist schwierig.
00:16:31: Ja genau so sehe ich auch.
00:16:33: also insofern wie gesagt dieses Create Seed hat mit Application Containern zu tun und ansonsten rät Oracle davon ab.
00:16:41: Also man kann die Plugable Data bis die PDB Seed tatsächlich ändern.
00:16:45: Es gibt die Möglichkeiten, das muss man ja auch.
00:16:48: wenn man zum Beispiel patcht Ja dann will ich natürlich die Seed Datemang mit patchen und nicht jedes Mal wenn ich daraus wieder eine Kopierstelle zu sehen dass sie gepatched wird.
00:16:57: Das kann man also wie gesagt machen.
00:16:59: es ist ein bisschen eine Grauzone was Oracle dort zulässt und was nicht.
00:17:04: Okay Also jetzt gehen wir mal davon aus, ich habe mich entschieden beziehungsweise wenn ich auf Oracle XXX geht dann muss ich ja.
00:17:10: also ich gehe jetzt mit Multi-Ten PDBs haben wir jetzt so berätet zum Plugable Databases.
00:17:14: Aber was ist denn im Unterschied dazu die CDB?
00:17:17: Die
00:17:17: CDB ist die Mutter Container oder der Vater Container weiß nicht ob das Männland oder Weibland ist aber zumindest es ist im Endeffekt das Schiff die Eisenbahn oder der LKW der den Container Huckepack trägt und damit alle Verwaltung hat, damit die Redo-Lock Dateien da dranhängen oder auch die SGA.
00:17:39: Das heißt, die Instanz ist verknüpft mit der CDB und daran hängen dann die Plagabit Databases.
00:17:44: Okay!
00:17:45: Und was brauche ich jetzt für Skripte?
00:17:46: Oder fange ich einfach an?
00:17:48: Was sind so die Grunddinge?
00:17:50: Ja genau, ich hatte gerade schon das Zauberwort CDB gesagt.
00:17:53: Das ist wie gesagt einerseits dieser Mastercontainer andererseits ist es aber auch eine ganze Schicht von Views die über den DBA-Views liegen.
00:18:04: Du kennst DBA Tables oder DBA Users, oder Dba Table Spaces und da drüber gibt es jetzt containerweit noch oder Datenbankweit die CDB Table Space, die CDP Users und was auch immer dort an Objekten vorhanden ist, die übergreifend über mehrere Container sichtbar sein sollen oder mehrere Plugable Databases sichtba sein sollen.
00:18:26: Und das ist etwas ganz Neues und damit muss man sich sehr intensiv auseinandersetzen.
00:18:32: Genau, also ich habe jetzt die Container-Datenbank, dass es die Mutterdatenbank und die vererbt ja Dinge in die einzelnen Pluggable Databases rein.
00:18:38: Also zum Beispiel User dies in der Containerdatenbank gibt.
00:18:41: sie sind auf einmal auch in allen meinem Pluggle Databasis drin.
00:18:44: Da muss ich mir drüber bewusst sein.
00:18:46: ansonsten hab ich auf einmal User meiner Datenbank mit denen ich gar nicht gerechnet habe oder?
00:18:50: Ja, einerseits das andererseits ist aber auch das wieder der große Vorteil.
00:18:53: Ich kann halt die DBAs global definieren in der CDB und die normalen Anwender, die halt mit einer Anwendung arbeiten direkt oder indirekt, die definiere ich nur an der PDB.
00:19:05: und dann muss der DBA auch nur einmal sein Passwort wechseln für die gesamte CDB nicht für jeder einzelne Plugable Database.
00:19:12: Okay Johannes, wenn du jemanden der heute vor der Entscheidung steht, Multitenant oder Single Database einen einzigen Satz mitgeben müsstest.
00:19:21: Was wäre das?
00:19:22: Multitenent ihr Sitt!
00:19:23: Und du darfst es auch noch begründen...
00:19:25: Es ist einfach toll, wenn man sich damit beschäftigt hat.
00:19:29: ich hatte das große Vergnügen in meinem ersten Kennenlernen von Multitenan auf Brand Levelland zu treffen.
00:19:36: ein fantastischer Mensch und er hat mich sofort so gepackt dass ich so ein richtiger Evangelist geworden bin um dieses Thema voranzutreiben.
00:19:45: Ich meine, was man denen ja auch sagen kann ist dass es letztes Jahr kein Weg dran vorbeiführt war.
00:19:49: mit sechsundzwanzig haben wir gar keine Chance mehr nicht mal Titanen zu machen oder?
00:19:52: Ja aber
00:19:53: ich brauche ja auch keine anderen Chancen.
00:19:55: das ist toll das ist super das funktioniert.
00:19:57: das läuft also insofern man sollte sich da nicht mit stressen.
00:20:01: wie gesagt ein Schulungen Training macht vielleicht Sinn aber ansonsten gelassen nehmen und damit arbeiten.
00:20:08: Okay, Johannes.
00:20:09: Das hat mir heute richtig viel Spaß gemacht!
00:20:11: Liebe Hörer, wie sieht es denn bei euch aus?
00:20:13: Habt ihr mit Multi-Ternen gute oder schlechte Erfahrungen gemacht?
00:20:16: Das würden wir gerne wissen.
00:20:17: Schreibt uns doch einfach mal eine Nachricht.
00:20:19: Schaut dazu in die Shownotes rein.
00:20:20: da findet ihr links zu Ora to Know unserer Webseite, da findet Ihr unsere Kontaktdaten.
00:20:25: Abonniert uns.
00:20:26: das würde uns freuen und mir bleibt nur noch zu sagen vielen Dank fürs Zuhören und Tschüss!
00:20:30: Tschüss und dann bis zum nächsten Mal.
Neuer Kommentar