• ベストアンサー

Oracle8iのデータをOracle8へ移行する方法

Oracle8iでエクスポートしたファイルをOracle8へインポートすると 「IMP-00010:有効なエクスポート・ファイルではありません。 ヘッダーは検証に失敗しました。」 と出て失敗してしまいます。 講習会のテキストを読んでみると、「この方法ではうまくできないこと のあります」とだけ書いてあり、どうすればうまく行くのかが わかりません。 元々下位バージョンへ移行するということで、「ムリなんじゃないかなぁ~」 と思ってやってみたらやっぱりダメでした。 何か良い方法はないのでしょうか・・?

質問者が選んだベストアンサー

  • ベストアンサー
  • yu-jin
  • ベストアンサー率80% (4/5)
回答No.2

ORACLE8iのエクスポートファイルじゃないとダメなんですか? 8i環境のテーブルのレコードを8環境に移行したいというのであれば、Oracle8iではなく、Oracle8のexpを使用してエクスポートファイルを作り、Oracle8のimpでデータを8環境に入れてやればいいはずです。

naonaka
質問者

お礼

できましたっ! よくよく考えてみるとそうですよね~ 8に入れたいなら8で作ってしまえばいいんですね。 あれこれ複雑なやり方を考えるよりも、まずシンプルに考えなきゃダメですね。 勉強になりました。 yu-jinさんを初め、回答していただいた皆様、ありがとうございました。

その他の回答 (2)

  • takasgy
  • ベストアンサー率42% (30/71)
回答No.3

Oracle8iからOracle8はやったことがないですね。 確かにExp/Imp無理な気がする。 Oracle8iが乗っているサーバとOracle8データベースが乗っているサーバはネットワークでつながっているのでしょうか? Oracle8iからOracle8にリンクテーブルを作成してOracle8i側からInsertするのは無理でしょうか? データが多い場合は、専用のロールバックセグメントを一時的に作成するか、プロシージャを作成して適当な時点でコミットするしかないですが。 頻繁にデータの以降が発生するは場合は、Oracle8iでテーブルのデータをテキスト出力して、Oracle8側でSQL*Loaderを使用してデータを投入することも可能かと思います。 Accessにデータを吸上げてOracle8側へデータ移行するのも楽ですけど、日付タイプなんかは気をつけないといけないかな。 NULLがある場合、適当な日付が入ってしまったような覚えがあります。

  • chaff
  • ベストアンサー率30% (264/874)
回答No.1

Oracle8i→Oracle8ですから問題はないと思うんですがねえ... (やったことないけど) "IMP-00010"でしょ?expファイルがブッ壊れているって可能性はないですか? 例えば FTPで持って来る(FTP使っていなかったらごめんさい)際 asciiモードで持ってきたとか。 あ、一つ思いつきました。こういうのはどうですか?  ODBCドライバ経由でMS-ACCESSかなんかで8i/8の表に対し  それぞれリンクテーブルを張り、ACCESSクエリー経由でデータをコピー  する っていうの。 たしか、ODBCドライバなら8i用のNet8でOracle8にもアクセスできたはずです。 多少効率は悪いですが....

関連するQ&A

  • インポートエラー(IMP-00010)

    Solaris上のOracle9.2.0 でエクスポートしたファイルを Windows上のOracle9.0.1 にインポートしようとしたら 以下のエラーがでました ----------------------------------- IMP-00010:有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました IMP-00000:エラーが発生したためインポートを終了します。 ----------------------------------- 原因は、Oracleのバージョン違い(9.2.0から9.0.1へのバージョンダウン)による物でしょうか?。 それとも、SolarisからWindowsにインポートした事による、例えば文字コード等による物でしょうか? また、原因に対する解決策はありますでしょうか?

  • 11gデータから10gへのインポートについて

    あるシステムのDB管理を行うにあたり、 Oracleを使用しているのですが、 Oracleのバージョンの違いにより、 DMPファイルのインポートが行えない事はございますでしょうか? 詳細は以下です。 ローカル環境のシステム Oracle 10g / 10.2.0.1.0 社内環境のシステム Oracle 11g / 11.2.0.1.0 社内環境システムよりバックアップを行い出力されたDMPファイルを ローカル環境へインポートを試みたところ、 以下のエラーが発生し、インポートができません。 *************************************************************************** 接続先: Oracle Database 10g Release 10.2.0.1.0 - Production IMP-00010: 有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました。 IMP-00000: エラーが発生したためインポートを終了します。 接続先: Oracle Database 10g Release 10.2.0.1.0 - Production IMP-00010: 有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました。 IMP-00000: エラーが発生したためインポートを終了します。 *************************************************************************** 解決方法をご存知の方がおられましたら ご教示いただけると有難いです。 以上、宜しくお願い致します。

  • Oracle10gから8iへのデータ移行について

    Oracle10g(10.1.0.2)のデータをOracle8i(8.1.6)へ移行する方法を教えていただけないでしょうか? Oracle8iからOracle10gのデータベースへアクセスして,そこでエクスポートすればいいのでしょうか?その方法もいろいろ試しているのですが,解決には至っておりません。 よろしくお願いします。

  • oracle11の移行について

    こんにちは。Oracleに関して質問があります。 現状2台(サーバA、サーバB)のWindows2003Serverがあり、それぞれOracle11.1gが稼動しています。サーバAで動かしているDBをそのままサーバBに持っていきたいと考えています。 Webでサーバ移行やバックアップをキーワードに検索したところ、ほとんどが、障害の発生したサーバにデータをリストアする方法が紹介されており、サーバ移行の観点で書かれた情報が少ないことがわかりました。 また、古いOracleだとexpコマンドやimpコマンドでバックアップ/リストアができるとありましたが、11.1gにはOracleEnterpriseManagerでバックアップが取れるようになっており、この機能を使って、移行できないものかと思っています。 たしかに、エクスポートファイルからのインポートというメニューがあるのですが、このメニューは特定のインスタンス?にWebアクセスした後にでてくるメニューなので、ここでインポートしたら、既存のインスタンスのデータが上書きされてしまう印象を持っています。 サーバBにリストアする場合は、あらかじめ、サーバAと同じインスタンス名でデータベースの入れ物?を作っておき、そこでインポートすればよいのでしょうか?また、この場合、管理ファイルなどが重複してしまうのですが、問題はありませんでしょうか? つたない表現で申し訳ありませんが、ご存知の方、ご教授お願いします。

  • Oracle8のエクスポートファイル

    Oracle8においてデータのエクスポートを行ってOracle7環境にインポートしようとしたら、エラーとなってしまいました。下位互換はしないのでしょうか。 また、下位互換しないのであれば、何か簡単な方法でOracle8のデータをOracle7環境に入れることはできないでしょうか?(エクスポートにオプションとかがあるのでしょうか?)

  • Oracle8iのImportとExport

    Oracle8iでのImportとExportができません。 必ず失敗してしまうのですが、原因がわかりません。 手順としては、DBA StudioからImportを実行して、 「正常終了」と言われた後に、EnterpriseManager のジョブを見ると失敗となっているという感じです。 Exportに関してもほぼ同様でです。 どなたかご助言をお願いします。

  • Oracle9iでのサーバー移行時のpublicユーザーの移行方法について

    移行元はOracle8iかOracle9i 移行先はOracle9iで、 EXP と IMP でデータの移行を行いたいのですが、 ●EXPの例 EXP TBL/TBL@SERVER FILE=E:\EXP_USER.DMP,FULL= Y,LOG=E:\EXP_USER.log ●IMPの例(AAAユーザーをインポートする) IMP TBL/TBL FILE=E:\EXP_USER.DMP LOG=E:\EXP_USER_COM.LOG FROMUSER=AAA TOUSER=AAA ROWS=YES しかしDATABASE LINKとSYNONYMはpublicユーザーで、 IMP文のAAAをPUBLICにしてもインポートされません。 ・PUBLIC DATABASE LINK データベースリンク ・PUBLIC SYNONYM publicユーザーの移行にはどのしたらいいのでしょうか?

  • Outlook2003から2000へのデータ移行

    Outlook 2003を使用しており、そのデータをエキスポートして、別のPCに入っているOutlook2000にインポートしようとしたのですが、バージョンが合わない(上位バージョン→下位バージョン)のため、出来ませんでした。なにか、よい方法はありませんか?お教えください。

  • 移行について

    Oracle未経験者です。 どのように質問をしてよいのかもわからないのですが、このたびOracleでの移行を行うこととなりました。 Oracleでの移行の方法として「Export / Import」「SQL*Loader」等の手段があることはわかってきたのですが、これらの方法のメリット・デメリット(あるいは制約事項)について、御存知のことを教えてください。 例えば「データの切替(コード変更等)が必要な場合には・・・」であるとか、「Oracleヴァージョンの変更を伴う場合には・・・」といった点について知りたいと思っています。 具体的な内容でなく申し訳ありません。

  • 8iで保存したDMPデータの10gでのインポートについて

    8iで保存したDMPデータの10gでのインポートについて 8iで保存したDMPデータの10gでのインポートについて 仕様上はOKのはずなのですが うまく動作できません。 (下記のメッセージとなります) 保存の時かインポートの時に何かオプションがいりますでしょうか。 ===================== 接続先: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options インポート・ファイル: EXPDAT.DMP > C:\EXPDAT.DMP 挿入バッファ・サイズを入力してください(最小値8192)。30720> エクスポート・ファイルはEXPORT:V08.01.07によって従来型パス経由で作成されました IMP-00013: DBAのみ別のDBAがエクスポートしたファイルをインポートできます。 IMP-00000: エラーが発生したためインポートを終了します。