05/08/2015

Oracle EXP-00091 error

A differenza dei backup con RMAN l’esportazione di dati da Oracle è un’operazione tutto sommato semplice e che non richiede particolari competenze.
Sia che si utilizzi il tradizionale exp oppure il più recente expdp (export datapump disponibile da Oracle 10g) l’esportazione è un’operazione indolore, semplice e che spesso può essere più pratica di un restore da RMAN per ripristinare parti limitate di un database (ad esempio un singolo schema, piuttosto che una tabella).

Uno dei warning più frequenti che capitano lanciando una export è l’errore EXP-00091.

oracle-exp1

La soluzione consiste nella semplice esportazione della variabile d’ambiente NLS_LANG (tramite il comando “export” su GNU/Linux e “set” su Windows) prima di lanciare l’esportazione, quello che spesso è meno chiaro con cosa va valorizzata questa variabile.
La NLS_LANG è composta da tre valori:

  • NLS_LANGUAGE
  • NLS_TERRITORY
  • NLS_CHARACTERSET

La sintassi con cui esportare la variabile è la seguente (sostituite export con set su OS Windows):

export NLS_LANG=[NLS_LANGUAGE]_[NLS_TERRITORY].[NLS_CHARACTERSET]

Per recuperare questi valori dovete collegarvi al database e lanciare la seguente query:

SELECT * FROM V$NLS_PARAMETERS;

oracle-exp2

Esportate la variabile e rilanciate il comando di esportazione.

I commenti sono bloccati.