Donnerstag, Januar 19, 2006

Reorganisation von Tablespaces

In 10g gibt es zwar einen Shrink-Befehl für Tabellen, aber eine Möglichkeit, einen TS automatisch zu reorganisieren, ist mir nicht bekannt. Da ist man dann auf exp/imp (bzw. expdp/impdp) und alter table ... move tablespace ... (bzw. alter index ... rebuild tablespace ...) angewiesen.

Aus diesem Grund verwende ich meine TS immer als logische Einheiten für zusammengehörige Elemente, die ich im Fall einer Löschung komplett loswerden möchte (also Tabellen und zugehörige Indizes; damit ich dann ggf. den TS samt allen data files wegwerfen kann).

Die Trennung von Indizes und Tabellen war meines Wissens früher einmal aus Performancegründen interessant (zur Verteilung von IOs), aber heute spielt das normalerweise keine Rolle mehr (wg. RAID etc.), was Tom Kyte gelegentlich erläutert hat (der hier ursprünglich angegebene AskTom-Link funktionierte nicht mehr).

Dienstag, Januar 03, 2006

REMAP_SCHEMA

Der Transfer von Daten aus einem Schema in ein anderes erfolgt beim Data Pump Import über den Parameter REMAP_SCHEMA (der an die Stelle der Parameter FromUser und ToUser des alten imp tritt). Der Befehl:
impdp hr/hr@db REMAP_SCHEMA=hr:scott
bewirkt somit den Import der hr-Objekte ins Schema Scott.

Die Verschiebung in einen anderen Tablespace erfolgt über den Parameter REMAP_TABLESPACE.