- - PR -
Oracle ExportImport
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-16 17:07
Oracleのエキスポート/インポートに関して質問させて下さい。
(といいますか、少し不安なので確認の意味で) <環境> Oracle8i Database ver8.1.6 Windows2000 Server 現在、データベースからエキスポートしたDumpファイルがあるのですが、 (exp file=xxx.dump userid=system/manager full=y log=xxx.log) これを同じ環境のデータベースへインポートしようとしてます。 imp xxx/xxx@xxxx file=xxx.dump log=xxx.log fromuser=xxxx touser=xxxx full=y ignore=y commit=y 上記の式を考えています。 現在、インポートしたいデータベースには、テーブルなどなど入っており ますが、一度、スキーマをDropした後にインポートするのか、テーブルのみを Dropするのかどうか迷っています。例えば、テーブルに既にデータが入っていて、 このテーブルをインポートしたときは、データが2重に入りますよね? (列のPrimaryKeyにもよると思いますけど) あまりこういった作業はおこなわないので、どうするのがベターなのでしょうか? アドバイスを頂けたらと思います。 | ||||||||
|
投稿日時: 2006-03-17 00:30
#不安に思っているなら、試験環境を作ってテストしましょう。
いや、テーブルをCreateする事に失敗すると、データもインポートされなかった気がします。テーブルをDropしておくか、あるいは別のテーブル名やユーザー名でインポートする必要があるかと。 あっしっはスキーマをDropした後にインポートしています。 _________________ 甕星 <mikahosi@abox9.so-net.ne.jp> http://blogs.msmvp.jp/mikahosi/ | ||||||||
|
投稿日時: 2006-03-17 03:29
こんばんは。
全くその通りです!!
一応、ignore=Y をインポート時に指定すると、失敗系は無視されますが、 なんとなく気持ち悪いですね。 #エクスポートのデータ中には、CREATE TABLE文相当のものが含まれています 何がベターかと言われると、よく分かりませんが、 自分はいつも、インポートするスキーマにはオブジェクトが一つもない(CREATE USER を実行した直後のような)状態にしてインポートしています。 #実際には DROP USER xxx CASCADE で削除し、CREATE USER xxx で作り直してます 個人的には、フルエクスポート(full=y)はあんまり好きではないですね。 _________________ takepon てんてこダンス | ||||||||
|
投稿日時: 2006-03-17 09:57
ご返答ありがとうございました。
試験環境はありますが、周りに聞けるような人がいないので、 (職種的に)申し訳ありませんでした。 とりあえず、drop user xxx cascade -> create user xxx んで、full=yでおこなってみようと思います。 |
1