2015-05-06 11 views
5

Il mio problema è che ho uno schema in cui sono bloccate le statistiche di tutte le tabelle.Perché Oracle sta bloccando le statistiche del mio schema dopo l'importazione?

Ho trovato su Internet che posso sbloccare utilizzando la procedura DBMS_STATS.UNLOCK_TABLE_STATS (SCHEMA_NAME).

Quello che devo sapere è il modo in cui Oracle determina quando le statistiche saranno bloccate e quando no, per evitare questo tipo di situazioni.

+0

Sei sicuro che qualcuno non abbia bloccato manualmente le statistiche, di proposito? –

+0

@AlexPoole Quando ho importato lo schema nella mia area di staging tutte le statistiche della tabella sono state bloccate, tuttavia nello schema originale non lo sono. – Aramillo

+1

Hai importato lo schema [senza dati] (http://andrewfraserdba.com/2011/03/08/ora-38029-object-statistics-are-locked-due-to-import-with-rowsn/)? Sembra influenzare sia imp che imdp, ma potrebbe essere utile sapere quali sono stati utilizzati e quali sono i parametri. –

risposta

4

Dalla documentazione per il original import command:

Se ROWS=n, quindi le statistiche per tutte le tabelle importate sarà bloccato dopo l'operazione di importazione è terminata.

E per data pump import:

essere consapevoli che se si specifica CONTENT=METADATA_ONLY, allora qualsiasi statistica dell'indice o tavola importate dal file di dump sono bloccati dopo l'operazione di importazione è stata completata.

Se non si desidera che i dati quindi come alternativa per sbloccare le statistiche su tutti gli oggetti importati si poteva lasciare CONTENT come ALL, e applicare un filtro di query per l'esportazione, invece di escludere tutte le righe, per esempio QUERY=("WHERE 0=1").

+0

Sì @Alex, sembra che tu abbia risolto il mio problema. Ho usato 'CONTENT = METADATA_ONLY' con' impdp' perché non avevo bisogno di dati, proverò la prossima volta usando il parametro 'QUERY'. Grazie :) – Aramillo