• 締切済み

はじめまして

はじめまして SQL初心者で先月始めたばかりなのですが "Oracle Enterprise manager" でユーザーを作り、同じDB内のユーザーのスキーマー内にある テーブルをエクスポート/インポートしたいのですがうまくいきません。 エラーとして ”このSQL文は無効です” ”この文字は無効です” ばかり出てきます。もしわかる方いらっしゃいましたらアドバイスよろしくお願いします。 私が打ったSQL文は以下のとおりです↓ 1,エクスポート ====================================== $exp mmmap/mmmap@mmmap file=c:\tableoutput.dmp lows=y tables=(T_FUKUSU_URIBA) ====================================== ユーザー:mmmap パスワード:mmmap ホスト文字列:mmmap ファイルを格納したい居場所:マイコンピューターのC¥ エクスポートしたいテーブル:T_FUKUSU_URIBA 2,インポート ====================================== $imp user01/user01234@mmmap file=c:\tableoutput.dmp log=imp.log fromuser=mmmap touser=user01 ====================================== インポートしたいユーザー:user01 パスワード:user0123 ホスト文字列:mmmap インポートしたいテーブル:T_FUKUSU_URIBA

  • Oracle
  • 回答数1
  • ありがとう数23

みんなの回答

  • milkhiyo
  • ベストアンサー率36% (75/206)
回答No.1

こんにちは。 今後、この手の質問をする際にはOracleのバージョンや OSの種類も記述した方が良いですよ。 バージョンによっては記述が異なる場合があります。 あと・・・export と import、両方ともエラーになってるんでしょうか? それともどちらかだけ? パッと見で気になったのは以下2点です。 (1) imp や exp の前にある $   そのままつけて流してますか?不要な気がしますが。。 (2) exp の 「lows=y」   「rows = y」の間違いではないですか?

関連するQ&A

  • インポートについて

    初歩的な質問ですみません・・・ ユーザモードでエクスポートした [ data.dmp ] があるのですが、このデータを、同じユーザが作成されている別のデータベースに、インポートしたいと思っています。その時、 [ data.dmp ] にある全テーブルのデータを(テーブルの作成と合わせて)インポートしたいのですが、 IMP USERID=****/**** FILE=user.dmp LOG=imp.log FULL=y IGNORE=y で大丈夫でしょうか? 「FULL」というパラメータが良く分かっていません。「全体をインポート」「全ファイルをインポート」という説明があったのですが、「全部」とは何を意味しているのか良く理解できていません。 よろしくお願いします。

  • importについて

    こんばんは。 exportしたダンプファイルを頂いたので oracleにimportしようと思っています。 色々調べて以下のようにわかったのですが、 間違っていないか、パラメータで追加した方が よいものがあれば、ご指摘お願いします。 1) 既に同じ内容のテーブルが存在するが、それは気にせずimportを行う。既存のテーブルデータは新しくimportするもので更新されている??? 2) SQL*PLUSでコマンドを叩く。 コマンド内容は以下の通り。 imp system/manager fromuser=test1 touser=test2 file=db_data.dmp log=implog.log test1 ← DBA権限あり。 test2 ← このユーザーの表領域にデータを作成したい。

  • サーバーの移行について(エクスポートとインポート)

    ご覧頂きありがとうございます。 サーバーの移行がうまくいかず困っているのでご質問させていただきます。 やりたいことは、本サーバーにあるOracleデータベースのデータをエクスポートして、開発環境にインポートさせようと思っています。 以下、行った作業です。 windowsのコマンドプロンプトから以下のコマンドを実行してエクスポート C:\>emp sadmin/password@sid file=C:\ora_data\empsid.dmp consistent=y owner=sadmin 開発環境にて、表領域の作成とユーザの作成、権限の付与を行う。 SQL>CREATE TABLESPACE HOGE datafile 'C:\temp\HOGE1.dbf' size 800M reuse logging online segment space management auto; SQL>CREATE TEMPORARY TABLESPACE HOGE_TEMP tempfile 'C:\temp\HOGE_TEMP1.dbf' size 800M extent management local uniform size 10M; SQL>CREATE USER sadmin IDENTIFIED BY hogehoge DEFAULT TABLESPACE HOGE TEMPORARY TABLESPACE HOGE_TEMP QUOTA UNLIMITED ON HOGE; SQL>GRANT DBA TO sadmin; GRANT IMP_FULL_DATABASE TO sadmin; 以下のコマンドを実行して、windowsのコマンドプロンプトからインポート。 C:\>imp sadmin/password@sid file=C:\ora_data\empsid.dmp log=C:\ora_data\impsid.log fromuser=sadmin touser=sadmin ignore=y 状況としましては、エクスポートは問題なく終了しています。(確信はありませんが(汗)) インポート実行時、トリガーの箇所だと思うのですが処理が止まってしまいインポートが完了しません。 画面上では、「制約を使用可能にします・・」と表示されて止まってしまいます。 ログには以下のようなエラーが出ています。 IMP-00003: Oracleエラー439が発生しました。 ORA-00439: 機能は有効ではありません: Partitioning IMP-00041: 警告: オブジェクト作成の際、コンパイル・エラーが発生しました。 DBを見てみると、データのインポートはできているようなのですが、トリガーのインポートができていないみたいです。 当方Oracleを触るのは初めてで、書籍やGoogle検索などで調べているのですが、原因解明できず途方にくれています。 どなたかご助言頂けないでしょうか? 宜しくお願いします。

  • oracle ダンプファイルのサイズとインポート先の表領域の使用サイズ

    oracle ダンプファイルのサイズとインポート先の表領域の使用サイズの関係 あるダンプファイル(2.5GB)をオラクルDBへimportしたら、 そのDBの表領域が10GBほど使用されました。 2.5GBのものをimportしたのに、なぜここまで表領域を消費するのでしょうか? (これまでこのようなことはありませんでした。) 表領域の使用サイズをもっと少なくするにはどうすればよいのでしょうか? エクスポート時のコマンド exp aaaa/aaaa file=bbbb.dmp log=exp_cccc.log consistent=y インポート時のコマンド imp aaaa/aaaa file=bbbb.dmp log=imp_cccc.log エクスポート時に「compress=n」をつけたり、 インポート時に「ignore=y」をつけたりしたのですが、 とくに変化はありませんでした。

  • 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ユーザーの移行にはどのしたらいいのでしょうか?

  • インポートコマンドが認識されません

    環境は、windows2000プラットフォームに、oracle9iです。 上記環境に、初期データベースを作成し、エクスポートされたダンプファイル(もらいもの)をインポートしようとしたんですが以下メッセージが出力され、ダンプファイルの取り込みができません。 インポートの方法は、以下です。 imp system/xxxxx@SID file=xxx.dmp fromuser=xxx touser=xxx 尚、toに指定しているユーザも作成してあります。 付与した権限は、connect、resourceです。 あと、インポートコマンド発行時に出力されるメッセージは次のようなものです。 SP2-0734: "imp system..."が開始するコマンドが不明です -残りの行は無視されました。 と出力されます。 上記メッセージから、impコマンドが認識されていないようにおもわれるのですが、ちょっと調べては見たのですが分からなかったので、ご教授ねがいます。

  • オラクルのインポートについて

    はじめまして。 12時前に質問したのですが、私の質問がWebから 見えないので、心配になってもう一度登録しています。 質問ですが、オラクルのDBサーバー移行作業を 3日前から進めているのですが、テーブルの インポートが出来なくて困っています。 インポート時のエラーは以下の通りです。 --------------------------------------------- C:\Temp>imp user/user@test file=C:\Temp\imp.dat log=C:\Temp\TBCIXBA.imp tables=tablename Import: Release 9.2.0.1.0 - Production on 金 Jun 18 11:43:46 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 接続先: Oracle9i Release 9.2.0.1.0 - Production JServer Release 9.2.0.1.0 - Production エクスポート・ファイルはEXPORT:V09.02.00によって従来型パス経由で作成されました IMP-00013: DBAのみ別のDBAがエクスポートしたファイルをインポートできます。 IMP-00000: エラーが発生したためインポートを終了します。 --------------------------------------------- お忙しいところすいませんが、手を貸して下さい。 失礼します。

  • テーブルのエクスポート・インポート

    SQL Server2005 を使用しています。 テーブルのインポート・エクスポートに関して質問があります。 今まで、Oracleを主に使用していて、「EXP」「IMP」コマンドを使用して DMPファイルを介して別PCのデータベース間でテーブルのやり取りをしていました。(DB上のテーブルすべてや特定のテーブルのみなど) 同様のことをSQL Serverで実現したく下記を試したのですが上手くいきません。 1.Management Studio で「タスク」→「データのインポート(エクスポート)」   フラットファイル、Excel、MDBファイルなど試したのですが、   これらの中間ファイルを介した際にデータ型が変わってしまい   元の型のまま戻せない。   Oracleの「DMP」ファイルのようなものには落とせないのでしょうか? 2.「bcp」コマンド   これに関しては、複雑でよくわかりませんでした。   もし、このコマンドで実現可能であれば、やり方を教えて下さると   助かります。 以上、ながなが書きましたが宜しくお願い致します。

  • 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: エラーが発生したためインポートを終了します。

  • インポートすれば、前の情報に戻るのでしょうか?

    テーブルに列やインデックスの変更など、どんな変更しても、インポートすれば、エクスポート時のテーブルの状態に戻るのでしょうか? 環境:Oracle 10g R2    Windows 2003 Server R2 ユーザー(スキーマ):userA このスキーマには、3つ作成したテーブルあるとします。 tableA tableB tableC [tableB]のテーブル定義を変更するのですが、失敗した時のために バックアップをとっておき、変更前の状態に復元できるようにしたいと考えています。 テーブル定義の変更は、主キーの削除、インデックスの追加を行ないます。 [変更テーブルのみexp、imp] 1.exp userA/passA file=D:\expUserA_tableB.dmp tables=(tableB) 2.tableBのテーブル定義を変更 <-- 失敗 3.drop table tableB <-- 変更に失敗したテーブルを削除 4.imp userA/passA file=D:\expUserA_tableB.dmp tables=(tableB) 上記の方法で、変更前の状態に戻るでしょうか? 実行してtableBが変更前の(主キーがあり、作成したインデックスがない)テーブル定義に 戻っていることは確認できるのですが、この戻し方で本当に正しいのか確信がもてません。 例えば、統計情報とか、そのテーブルに紐付いている?情報も全て変更する前の状態に戻っているのでしょうか? それとも、スキーマ(userA)をエクスポートし、スキーマ(userA)を削除し、 エクスポートしたスキーマをインポートしないと戻らないでしょうか? よろしくお願いします。