Frage zu Oracle Import

Hallo,

ich habe bis jetzt den Import eines Dumps immer wie folgt gemacht:
Alle Objecte des Schemas gelölscht
Import
Fertig

Jetzt sagte man mir das wäre evtl. nicht so gut, man solle erst alle Tabellen leer anlegen und dann importieren… ?

Ist das besser ? Warum ist das besser ? gibt es eine Grundsätzlich Anleitung für einen optimalen Import ?

Grüße

Chris

Hallo,

ich habe bis jetzt den Import eines Dumps immer wie folgt
gemacht:
Alle Objecte des Schemas gelölscht
Import
Fertig

So mache ich das auch

Jetzt sagte man mir das wäre evtl. nicht so gut, man solle
erst alle Tabellen leer anlegen und dann importieren… ?

So würde ich es gerade nicht machen. Schließlich nutzt man beim Export gleich die Compress Extends option. Damit erhält man zusammenhängende unfragmentierte Tabellen. Die mag ich.

Gruß

Peter

Ist das besser ? Warum ist das besser ? gibt es eine
Grundsätzlich Anleitung für einen optimalen Import ?

Grüße

Chris

Hallo zusammen,

meiner Meinung nach ist das eine Frage der Aufgabenstellung…

ich habe bis jetzt den Import eines Dumps immer wie folgt
gemacht:
Alle Objecte des Schemas gelölscht
Import
Fertig

So mache ich das auch

Ich nicht, ich lege in der Regel die Tabellen leer an und importiere erst danach. Bei Reorganisation der Tablespaces bleibt einem da ohnehin keine andere Wahl, aber auch sonst mache ich das so (Gründe weiter unten).

Jetzt sagte man mir das wäre evtl. nicht so gut, man solle
erst alle Tabellen leer anlegen und dann importieren… ?

So würde ich es gerade nicht machen. Schließlich nutzt man
beim Export gleich die Compress Extends option. Damit erhält
man zusammenhängende unfragmentierte Tabellen. Die mag ich.

Weil ich zusammenhängende, unfragmentierte Segmente (Tabellen, Indices, etc.) so gerne mag, mache ich beim Export KEINEN compress extents und lege meine Tabellen und Indices vor dem Import händisch an. Weil ich nämlich ein findiger Bursch bin habe ich mir vorher ausgerechnet, wie gross meine Segmente bis zum nächsten Reorganisieren in etwa werden. Wenn ich also meine Tabellen jetzt nach 2 Monaten exportiere, die überflüssigen (leeren) Extents wegschmeisse, dann bleiben mir von meiner kalkulierten Grösse (ich rechne in der Regel mit 3-5 Jahren) in etwa 3-5 % übrig. Weil ich mich aber nicht so grob verrechne legt die Datenbank im Laufe der restlichen Zeit die Extents wieder an, und zwar irgendwo anders im entsprechenden Tablespace, d.h. ich komme zu wunderhübsch fragmentierten Segmenten.

Wenn ich aber die Berechnungen vorher nicht angestellt habe und ohnehin immer die Defaultgrössen des Tablespaces für die Segmente übernehme, dann kann ich mir das Anlegen der Tabellen und Indices natürlich sparen, in dem Fall ist dann auch der compress extents recht angebracht.

Ist das besser ? Warum ist das besser ? gibt es eine
Grundsätzlich Anleitung für einen optimalen Import ?

Wie immer bei Oracle gibt es keine grundsätzliche Anleitung um irgendetwas optimal zu machen - bestenfalls Fakten, die dafür sprechen etwas auf keinen Fall so oder anders zu machen, kommt halt immer auf die Situation an.

Gruß

Peter

Grüße

Chris

Auch euch beiden meine besten Grüße
Martin

Hallo, danke schon mal für die Atworten !

@Beast: Ich kann mir schon vorstellen das das mit dem neu-berechnen schon eine nützliche Sache sein kann, vielleicht komme ich da auch irgendwann mal hin :wink:

Zur Zeit ist es allerdings so das ich einen Dump aus Produktion bekomme, da weiß ich schon nicht wie der exportiert wurde. welche Datenmengen dann produziert werden kann man im vorraus nicht sagen, da das von den Tests und deren Dauer abhängt.

Ich wünsche euch schöne Weihnachten !

Grüße

Chris