• ベストアンサー

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