QA@IT

フルデータの入ったダンプファイル(*.dmp)のOracle 10g Express Editionへのインポート方法について

8349 PV

【環境】
OS:WindowsServer2012無償版(※Windows8内でVMwarePlayer使って立てた仮想マシン内にインストールしました。)
Oracle:Oracle 10g Express Edition

【目的】
フルのデータダンプのファイルをOracleにインポートしたいです。

【今までの作業状況】
1.Oracleをインストールしました。その際、パスワードとIDの作成を求められたので行いました。他には何も行っていません。

2.SQLコマンドラインを起動し、以下のコマンドを入力しました。
SQL>connect as sysdba
ユーザー名を入力してください:IDXXX←1で作成したIDを入力
パスワードを入力してください:PSXXX←1で作成したパスワードを入力
接続されました。
SQL> **imp file=C:\DBDUMP\dumpfile.DMP full=y
**SP2-0734: "imp file=C..."で開始するコマンドが不明です - 残りの行は無視されました

SQL>

【疑問点】
・上記以外の作業は行っていないのですが、他に必要な作業があれば教えてください。
・あるいは間違った作業をしているのであれば教えてください。
・ユーザー名とパスワードは、1の段階で作成したものでなくても「接続されました。」と出力されてしまいました。なぜでしょうか。

猶予の無い現状ですので、どんな些細な情報でも大変助かります。
どうか宜しくお願い致します。

回答

filed_onionさん。

ご回答ありがとうございます。

管理者コマンドプロンプトで行いました。


C:\Windows\system32>imp system/admin file=C:\DBDUMP\dmpfile.DMP full
=y

Import: Release 11.2.0.2.0 - Production on 水 5月 13 14:32:00 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.


接続先: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Productio
n

IMP-00038: キャラクタ・セットのハンドルに変換できません
IMP-00000: エラーが発生したためインポートを終了します。

C:\Windows\system32>

上記のような結果になりました。
現在、出力されたエラー(IMP-00038)について調査しています。

SQLPlusは使わないのですね。知りませんでした。
パスワード期限の件に関しても、重要な情報をありがとうございます。

上長から「DBスペースを作ってないからじゃない?」との意見を頂きました。
たしかにデータが入る「器」を作る作業はしていないので、それが原因かもしれませんが、どうでしょうか。

なんによせ一歩前進しました。
助かりました。
もし何か他にお分かりでしたら、ご意見いただけると幸いです。
ありがとうございました。

編集 履歴 (0)
  • これ以上は情報が少なすぎます。環境も 11g Expressのようですし、ダンプファイルに関する説明もありませんし。
    ただエラーメッセージの通りじゃないかとは思います。もうちょっと自分で調べてください。
    -

そのダンプファイルというのがどこからでてきたのかわかりませんのでimportできるかはわかりませんが、
とりあえず imp / exp ユーティリティ はsqlではないので、sql*plus (SQLコマンドライン?)から実行するのが間違っています。

Windows版だとシステム環境変数のpathでパス通ってると思うので、管理者ユーザーでコマンドプロンプト開いて

c:\users\foo> imp IDXXX/PSXXX file=C:\DBDUMP\dumpfile.DMP full=y

みたいにすれば動くんじゃないでしょうか(コマンドが正しいかは確認してませんが多分あってると思う)。
ひょっとしたら管理者コマンドプロンプトじゃないとだめかもしれません

指定していないパスワードで接続できる理由はわかりませんけど、Windows認証が有効になってるからですかね?
管理者ならパスワードなくても

c:\users\foo> sqlplus /nolog
SQL> conn / as sysdba

とかでsysdba権限で接続できそうな気がします。

( WindowsServer2012無償版 じゃなくて無償評価版ですよね? )

関係ないですが10gあたりから(11gからだったかも)デフォルトのパスワード期限が設定されているので、長期に使う予定がある場合はロックされないように気を付けましょう。
(ロックされても上に書いた conn / as sysdbaでは接続できたとおもうのでそれ解除すればOK)

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。