概説Oracleデータベースのインポートおよびエクスポートする方法

説明:
1、データベースのデータのインポートおよび方法の様々なエクスポートは、EXP / IMPコマンドを導入することによって導出することができるようなサードパーティツールによっても誘導することができる:PLSQL
2コマンドに精通している場合、インポートおよびエクスポートは、最初を回避するために、EXP / IMPコマンドによって推奨三者ツールのバージョンの違いは、より効率的に、同時に、発生しますが、特別な注意:ユーザーやコマンドを使用するときに使用するその権限などの詳細に注意を払います。
3、あなたが作成し、ターゲット・データベースの輸出のインポート、およびエクスポート以上でのユーザー権限を与える必要があり同じユーザー名(可能な限り同じ);同時に、ローカル・データベースがすでに存在する場合は、元のデータベース名と同じ表スペースを作成する必要がで同じ表スペースは、表スペースにのみ拡張することができます。

まず、(ターゲット・データベース操作で)前に準備作業をインポート

知識が追加されました:
表領域
  Oracleデータベーステーブルは、テーブルによって物理的空間を記憶するために、データベース・インスタンスは、テーブルスペースのN数を持つことができ、テーブルの下の空間は、N個のテーブルを有することができます。
表スペース(表領域は)論理的に分割データベース、(SYSTEM表領域と呼ばれる)少なくとも空間を有する各データベース・テーブルです。管理を容易にし、業務効率を改善するためには、ユーザーとアプリケーションを分割するためにいくつかの追加の表スペースを使用することができます。
たとえば、次のように一般的なユーザーのためのUSER表領域、ロールバックするために使用さRBS表領域。表スペースは、データベースに属することができます。

1、ログインサーバー
    Xshell、SecureCRTのでは、MobaXtermツールが可能
2、クエリのディスク容量が十分な大きさである
    のdf -hのdf -hコマンドまたはクエリを実行するためには、十分な空き領域は、新しいターゲット環境で置き換え、その後、他の操作を続行した場合。

 [オラクル@ ORAC〜] $ DF -h

3、ルックアップテーブルスペースの詳細
(1)順番にコマンドを実行し、ターミナルを使用してログオン:

[オラクル@ ORAC〜] $ suコマンド - オラクル(oracleユーザーに切り替え(ユーザー名のLinuxの)) 

   新/ホーム/オラクル/アプリ/ oradataにディレクトリフォルダ、パスを使用する必要の後ろにテーブルスペースを作成してターゲット・データベースに基づいてデータファイルの保存場所があることも、一意ではありません。

[オラクル@ ORAC〜] $ /ホーム/オラクル/アプリ/ oradataの
[オラクル@ ORAC〜] $ます。mkdirカタツムリ

(2)ログデータベース

[オラクル@ ORAC〜] $ sqlplusを/ SYSDBAとして 

SQL文の実装

選択a.tablespace_name、a.bytes / 1024/1024 "和MB"、(a.bytes-b.bytes)/ 1024/1024 "使用MB"、b.bytes / / 1024×1024 "自由MB"、ラウンド(( (a.bytes-b.bytes)/a.bytesが)* 100,2) "使用済み%" 
(セレクトテーブル空間、合計(バイト)からは、テーブル空間によりDBA_DATA_FILES群からのバイト)、 選択テーブル空間、合計(バイト)バイト、MAX(バイト)テーブル空間)BによってDBA_FREE_SPACEグループから最大
((a.bytes-b.bytes)/a.bytesによってa.tablespace_name = b.tablespace_name順)DESC。

以下に示すように、データベース・スペースの現在のテーブルを取得するには

 注:現在、既存の表スペースと同じデータベース・テーブル・スペース名をインポートする場合、あなたは(あなたが構築することはできません)新しいテーブルスペースを必要としませんが、既存の表スペースのサイズを決定するのに十分でなければならない、または自動的に増加し、自動的に増加するように設定されています最大値が十分大きな、テーブルのその後ない膨張空間、ステージ空間に直接テーブルであり、第四のステップはスキップされます。インポートするデータを格納するための表スペースまたは表スペース十分な大きさの名前ならば逆に、テーブルは、スペースを拡張する第四工程の実施を必要とします。

図4に示すように、拡張表領域の
  表領域は、種々の方法で増強、いくつかの一般的な方法を導入する:
(1)直接テーブルスペースのサイズを増やします。

表スペースのデータファイルの保存場所を表示するには、
SQL>を選択しTABLESPACE_NAME、FILE_ID、file_nameに TABLESPACE_NAMEによってDBA_DATA_FILES順から、ラウンド(バイト/(* 1024 1024)、0)TOTAL_SPACEを、 
データファイルの場所を決定し、コマンドを実行します。
  ALTERデータベースのデータファイルをサイズ変更のサイズ増加する「データファイルのパス」
例:
SQL> ALTERデータベースのデータファイル「/home/oracle/oradata/SPS_DATA.DBF」Aリサイズ4000メートル 

     注:このメソッドは失敗した増加を示唆し、説明するテーブルデータテーブルスペースの存在下で増加する、次の方法が推奨されている
データファイル(2)数を増加させます

サイズデータのALTER TABLESPACE表領域名の追加のデータ・ファイル「新しく追加されたデータファイルパス」、ファイルサイズ
、例えば:
SQL> ALTER TABLESPACEのSPS_DATAのデータファイル追加「/home/oracle/app/oradata/snail/SPS_DATA02.dbf」サイズの2000メートル 

(3)表スペースが自動的に拡張されている設定しました

ALTERデータベース・データ・ファイルは、次の拡張装置上の自動拡張「表領域を拡大するために」最大サイズMAXSIZEのサイズの展開
例:
SQL> ALTERデータベースのデータファイル「/home/oracle/app/oradata/snail/SPS_DATA.dbf」自動拡張次MAXSIZE万メートル100メートルに
注:この方法は、最終的に導入された不確実性が推奨特にときに、組み合わせて使用することができる場合など、ファイルサイズ、:
SQL> ALTER TABLESPACE SPS_DATA追加データ・ファイル「/home/oracle/app/oradata/snail/SPS_DATA02.dbf」ON次に200Mサイズ2000メートルのAUTOEXTEND MAXSIZE 12000Mは、
拡大して表スペースの成功を確認し、ステップ3ビュー表スペースのサイズのSQLの後に再び拡大して表スペースを実行することができます。

5、一時テーブルスペースとデータ・テーブル・スペースの作成
      作成は最初の2つのユーザー・テーブル・スペースの前に一時テーブルスペースとデータベース・テーブル・スペースを作成する、またはデフォルトの表スペースを使用する必要があり、それは他の問題が発生します。
(1)一時テーブルスペースを作成します

次の100メートルMAXSIZE 10240メートルエクステント管理の一時表領域の一時表スペースの一時ファイルを作成する「一時表領域の位置」サイズの一時表スペースの自動拡張ローカル; 
例えば:
SQL>一時表領域SPS_DATA_tempの一時ファイルを作成する「/ホーム/オラクル/アプリケーション/ oradataに/カタツムリ/ SPS_DATA_temp.dbf「
サイズ1024M AUTOEXTEND ON MAXSIZE 10240メートル100メートル次のローカル管理エクステント。

(2)データ・テーブル・スペースを作成します

パラメータ空間で、実質的に一時テーブルを作成します
。例:
SQLを> TABLESPACE SPS_DATAログデータファイル「/ホーム/オラクル/アプリケーション/ oradataに/カタツムリ/ SPS_DATA01.dbf」作成
サイズ1024M AUTOEXTEND ON MAXSIZE 10240メートル100メートル次のローカル管理エクステント。

      注:Ifは、最初の4つのステップを実施した後、すなわち拡張用のテーブルスペースからではなく、新しいものを構築するよりも、あなたがデータ・テーブル・スペースを作成する必要はありません(だけでなく、一時テーブルスペースを作成する必要があります - ビューの個人的なポイント)

6、データベースユーザーを作成して、表スペースを指定

今後の導入のためのユーザ管理データは、同じユーザ名を導出する場合、好ましくは、ユーザ名とユーザ名を使用し、それはまた別のものであってもよく、導入IMPコマンド場合(インポートユーザに切り替えマッピングのニーズは、フォーマットがある)行われる:
  パスワードのデフォルトの表領域のユーザーが指定した表スペース名の一時表領域、一時表スペース名で識別されるユーザーのユーザー名を作成します。
例:
SQL>で識別されるユーザーを作成します。ABC ABCデフォルト表領域のSPS_DATA一時表領域SPS_DATA_temp。

7は、ユーザーの許可を与える
ことが輸入にユーザーを取るために、それがdba、IMP_FULL_DATABASE権限を含む、少なくともユーザーの権限を与えられるべきである、また、エクスポート・データベースのデータへのユーザーの権限と一致するように示唆されています。

SQL :(承認、場合に応じて)
グラントのDBA、IMP_FULL_DATABASE、EXP_FULL_DATABASE、接続、リソース、ユーザーを作成します。名前にセッション; 
例えば:
SQL>グラントは、任意のビューをドロップし、ユーザー、ユーザー・ドロップ、ALTERユーザー、任意のビューの作成を作成し、EXP_FULL_DATABASE 、
IMP_FULL_DATABASE、DBA、接続、リソース、読み取り、書き込みは、ABCにセッションを作成します。

第二に、エクスポート/インポート・コマンド:EXP / IMPコマンドの
知識の拡大:
のデータ・ポンプ・エクスポートインポート効果(EXPDPとIMPDP)
ロジック論理バックアップとリカバリを実現するために(1)。
(2)は、データベースのユーザ間でオブジェクトを移動させます。
(3)データベースとの間でオブジェクトを移動させる
(4)は、表領域を達成するために移動します。
伝統的な輸出インポートとデータ・ポンプ・エクスポートインポート差:
10グラムの前に、伝統的なエクスポートとインポートツールを使用して、EXP IMPツール、開始から10グラム、元のEXPおよびIMPツールを保持するだけではなく、また、データ・ポンプ・エクスポートインポートを提供EXPDPツールとIMPDP使用EXPDPとIMPDPは問題が:.ことに留意すべきである
   EXPおよびIMPユーティリティの顧客セグメントが、彼らはどちらかのクライアントは、サーバセグメントで使用することができます使用することができます。
   EXPDPとIMPDPは、サーバー側のユーティリティです、彼らは、ORACLEサーバーでのみ使用することができ、クライアントが使用することはできません
   EXPDP・エクスポート・ファイルには適用されません、IMP EXPのみエクスポートファイルに適用されます。IMPDP EXPDPは、エクスポートファイルに、そしてないに適用されますEXPエクスポートファイル。

1、Exportコマンドを関数exp
:エクスポートとインポートに、それぞれ、三つの方法持っている
(1)全モード・エクスポート(インポート):
         データベース・エクスポートの内容全体を、しかし、操作に特別な許可を必要とし、

EXPのユーザー名/パスワードのバッファ= 32000file =フル= yのエクスポートされたディレクトリの
例:
EXPシステム/ファイルマネージャバッファ= 32000 = D:\ iom.dmpフル= Y 

(2)ユーザモード導出(インポート)
         すべての指定されたユーザのエクスポートするなどのオブジェクト。

exp iom/iom buffer=32000 file=d:\iom.dmp owner=iom

(3)表模式导出(导入)
          将用户的所有表数据进行导出,例如:

exp iom/iom buffer=32000 file=d:\iom.dmp owner=iom tables=(iom) 

备注:可以执行exp help=y、imp help=y查看帮助命令,以及执行exp或者imp查看对应版本号。

导出步骤:
首先切换到oracle用户(数据库超级管理员)

[oracle@orac ~]$ su - oracle 

根据所需要采用的导出模式进行导出

[oracle@orac~]$exp iom/iom file=iom.dmp log=oradb.log full=y compress=y direct=y 
COMPRESS参数将在导出的同时合并碎块,尽量把数据压缩到initial的EXTENT里,默认是N,一般建议使用。DIRECT参数将告诉EXP直接读取数据,而不像传统的EXP那样,使用SELECT来读取表中的数据,这样就减少了SQL语句处理过程。一般也建议使用。不过有些情况下DIRECT参数是无法使用的。 
其他参数可参照帮助命令,或者其他资料进行学习。在此不一一赘述。

2、导入命令
登录服务器,切换到oracle用户。

[oracle@orac ~]$ su - oracle 

执行导入命令:
导入时需要用准备工作中创建的新用户,如:用户名abc,密码ABC

imp 用户名/密码 file=dmp文件路径 log=输出日志路径full=y ignore=y; 
例如:
[oracle@orac ~]$imp abc/ABC file=/home/oracle/iom.dmp log=/home/oracle/iom.log full=y ignore=y;

温馨提示:采用数据泵导入过程经常会遇到问题,建议多查阅资料,总有方法解决。相信每一件事物都有它存在的必要性,问题只是暂时的,成功才是必然的!

 

转自:https://www.cnblogs.com/alsodzy/p/8675935.html

おすすめ

転載: www.cnblogs.com/shujk/p/12590326.html