Veröffentlicht 9. Januar 200619 j Hallo! Ich habe folgendes Problem: Die Struktur einer bestehenden Datenbank soll komplett (inkl. Trigger etc.) in eine neue Oracle DB übertragen werden, so das die neue DB alle Funktionalitäten der Ursprungs DB enthält und entsprechend alle Schemata der Ur-Db gleichen. Womit gehe ich da ran? besten Dank für jeden Tip. Gruss yallayalla
9. Januar 200619 j Soll nur die Struktur exportiert werden, also ohne Inhalte? Dann würde ich eine leere Hülle aufbauen und starten, wo die Tablespaces wie in der Quelldatenbank vorhanden sind. Dann wird aus der Quelldatenbank ein Full-Export ohne Rows gezogen, der dann in die leere Hülle reingefahren wird.
9. Januar 200619 j http://www.indiana.edu/~dss/Services/DataWarehouse/Oracle/expimp.html Appendix A: Objects Exported In Each Mode such dir dort aus, was du exportieren willst, und wähle den gewünschten modus, z.b. full oder user, tables. mit "rows=no" exportierst du die struktur, aber keine tabellenzeilen. allfällige fragen wird sicherlich auch die Oracle Import/ Export FAQ beantworten können. s'Amstel
10. Januar 200619 j Hallo! Hmm, schon ganz hilfreich, aber: Ich will kein dump-File haben, sondern am Schluss eine anpassungsfähige Installationsprozedur haben, die aus der bestehenden DB sowohl die Steuertabellen (mit Inhalt) und die Datentabellen (ohne Inhalt) ausliest und neu in der neuen DB anlegt. Weiterhin sollen bestehende Packages auch in die neue DB. mfg yallayalla
10. Januar 200619 j Anhang: Es existieren doch VIEWS unter SYS, die alle Tabellen, Packages etc. anzeigen können. Koennte man aus diesen Ausgaben auch neue CREATE X Befehle machen, die die DB neu anlegen? Wie kann ich die VIEWS unter SYS nutzen? mfg yallayalla
10. Januar 200619 j Es gäbe da noch die Möglichkeit des reverse engineering, um Quellcode für Func/Proc/Pkg zu erzeugen. Dazu gibt es in 9i das Package DBMS_METADATA. Ansonsten hilft wirklich nur ein Full-Export.
10. Januar 200619 j Hallo! Also alle Packages habe ioch nochmal sperat als Dateien...es geht eigentlich nur um die Tabellen... mfg yallayalla
10. Januar 200619 j Tja, wenn du es unbedingt so machen willst, dann musst du dir halt über mehrere/viele Views (DBA_OBJECTS, DBA_TABLES, DBA_TAB_COLUMNS, ...) irgendwas zusammenkonkatenieren. Dann hast du erstmal die Tabellen. Dazu kommen noch Constraints, Indexes, ... Ich bezweifle allerdings, dass das funktioniert. Im Endeffekt versuchst du das exp-Tool von Oracle nachzuprogrammieren, denn ein dump ist im Endeffekt auch nichts anderes als ein Haufen DDL/DML. Viel Spass dabei!
10. Januar 200619 j Hallo! Aber ein Dump nimmt doch immer den Inhalt mit, oder? Oder kann ich auch die Struktur auch ohne Dateninhalt abbilden? mfg yallayalla
10. Januar 200619 j Aber ein Dump nimmt doch immer den Inhalt mit, oder? Nein!!! Wie oben schon mehrfach erwähnt, kann der Export OHNE Rows erfolgen. Einfach beim exp ein rows=n in den Aufruf setzen, und es werden keine Zeilen rausgeschrieben.
10. Januar 200619 j Hallo! Also alle Packages habe ioch nochmal sperat als Dateien...es geht eigentlich nur um die Tabellen... mfg yallayalla Ein leistungsfaehiges Tool nehmen (gibt es Dutzende) DDL generieren lassen glücklich sein gruss
13. Januar 200619 j richtig... jedes anständige Datenmodell-modelierungstool kann auch den umgekehrten Weg (reverse engeneering) und liest die Datenbank aus und erstellt dir die Sqls zum anlegen der Strucktur... Wir nutzen z.B. Powerdesigner von Sybase. (da gibt es ab auch günstigere und trotzdem nicht schlechte alternativen) In die sys und system Tabellen/Views solltest du nicht schreibend eingreifen... Das knallt. Auch die hier vorgeschlagene Variante des Fullexp/Imp hat tücken, da du den Import dann auf keinen fall in eine datenbank einer niederen Version/Patchlevel machen solltest. Also keine gute Idee falls du das an Kunden verteilen willst, wo du die Version nicht kennst...
13. Januar 200619 j Hallo! Ersteinmal vielen Dank für die vielen Hinweise und Anmerkungen. Das hier soll automatisiert (mehr oder weniger) erfolgen: (Oracle User, Tabellenstrukturen, Tabelleninhalte,PL/SQL Procederen ...) anlegen. Das Installieren der Anwendung erfolgt bisher manuell bzw. mittels Ex-/Import aus der bestehenden Datenbank. mfg yallayalla
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.