DEFERRED_SEGMENT_CREATION-Funktion deaktivieren

Die DEFERRED_SEGMENT_CREATION-Funktion wurde von Oracle in Release 11.2 eingeführt. Standardmäßig ist die Funktion in allen Installationen aktiviert. Mit dieser Funktion wird verhindert, dass eine Anweisung zum Erstellen einer Tabelle tatsächlich eine Tabelle erstellt. Die Tabelle wird erst erstellt, nachdem eine Datenzeile eingefügt wurde. Diese Funktion kann beim Exportieren und Importieren von Oracle Hyperion Financial Management-Schemas Probleme verursachen, da einige Tabellen während des Imports möglicherweise nicht erstellt werden. Es wird empfohlen, diese Funktion zu deaktivieren. Tabellen müssen in diesem Fall automatisch erstellt werden. Um diese Funktion zu deaktivieren, melden Sie sich mit SYSTEM oder SYS bei Ihrer Instanz an, und geben Sie folgenden Befehl aus:

alter system set deferred_segment_creation=false; 

Nach der Ausgabe dieser Anweisung werden alle Tabellen automatisch erstellt. Wenn Sie bereits über eine Instanz mit leeren Tabellen verfügen und die Anwendung exportieren möchten, können Sie die jede Tabelle einzeln ändern, um die Erstellung zu erzwingen und die Verwendung der Tabelle durch den Befehl EXP (Export) zuzulassen.

Um zu bestimmen, ob ein Schema leere Tabellen enthält, führen Sie einen der beiden folgenden Befehle aus:

select segment_name, segment_type, extents from dba_segments where extents < 1 and segment_type='TABLE' and owner='<hfm db schema>'
select table_name from all_tables where owner='<hfm db schema>' and table_name not in (select segment_name from dba_segments where owner='<hfm db schema>' and segment_type='TABLE' and extents>0)

Geben Sie für jede leere Tabelle den folgenden Befehl aus:

alter table <table_name> allocate extent