Oracle impユーティリティを使用して、特定のダンプファイルをインポートしようとしています。しかしながら;以下の問題に直面しています。
C:\Users\AD>imp DB_USER/*****@dev1 file=C:\test\db42312.dmp log=C:\test\import2.log
Import: Release 11.2.0.1.0 - Production on Thu Apr 10 13:37:47 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
IMP-00038: Could not convert to environment character set's handle
IMP-00000: Import terminated unsuccessfully
C:\Users\AD>
私のソースDBはNLSクエリに対して次の結果をもたらします
SQL> select * from v$nls_parameters where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE');
PARAMETER VALUE
---------- ---------
NLS_LANGUAGE FRENCH
NLS_CHARACTERSET AL32UTF8
SQL>
そして、私の宛先DBは次の結果をもたらします。
SQL> select * from v$nls_parameters where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE');
PARAMETER VALUE
---------- ---------
NLS_LANGUAGE AMERICAN
NLS_CHARACTERSET AL32UTF8
SQL>
Importコマンドの実行中に直面する問題は、文字セットの問題のようです。
データベースダンプを新しい(空の)スキーマにインポートすることはできますか?同じサーバー上に既に他のデータベースがあることに注意してください。
私にとってそれは間違っていたimpコマンドでした。取得したダンプはexpdpを使用して取得したものであり、impを使用してインポートしようとしました。
impdpコマンドを使用してインポートしました。
Metalinkドキュメントによると:
インポートがエラーIMP-38で失敗する(Doc ID 1024237.6)
原因:ダンプファイルが破損しているか、環境変数が正しく設定されていません。
解決策:この問題に取り組む際に考慮すべき点がいくつかあります。
エクスポートダンプファイルがFTPを使用してある場所から別の場所に転送された場合は、BINARYモードを使用して送信されたことを確認してください。
ダンプファイルが編集されていないことを確認してください。これはサポートされているアクティビティではありません。
環境設定を確認してください。
環境変数LD_LIBRARY_PATH
が、使用されているバージョンのエクスポートバイナリの正しいOracle_HOME
を指していることを確認してください。
LD_LIBRARY_PATH
は$Oracle_HOME/lib
に設定する必要があります。これが正しく設定されていないと、エクスポート実行可能ファイルは正しいNLSファイルを見つけることができません。
Oracle7.2.2を使用している場合は、環境変数ORA_NLS
が正しく設定されていることを確認してください。 $Oracle_HOME/ocommon/nls/admin/data
に設定する必要があります
環境変数NLS_LANG
をエクスポートダンプファイルの文字セットに設定します。
エクスポートは、ターゲットデータベースに使用されている文字セットとは異なる文字セットを使用しているデータベースから作成された可能性があります。
これは、1つのデータベースが7ビットの文字セットを使用し、もう1つのデータベースが8ビットの文字セットを使用する場合に特に当てはまります。