あるユーザーから別のユーザーへの輸出輸入へ
問題
環境:Oracle 11gの、RedHatの6
ユーザーAは、DBA権限、パスワードのユーザーAであります
総ユーザーAのユーザーの下で輸出のすべての量、および新しく作成したユーザーのユーザーBにインポート
解きます
ディレクトリの作成: create or replace directory DUMP_DIR_D as '/home/oracle/rhuser/oracledmp';
1、環境を復元するために再テストの前に
DROP USER userb cascade;
drop tablespace tbsfsj including contents and datafiles;
2、テーブルスペースとユーザー権限委譲を作成し、
create TABLESPACE tbsfsj DATAFILE '/home/oracle/rhuser/tbsfsj.dbf' -- redhat user size 10M autoextend on maxsize 30G; create user userb identified by userb default tablespace tbsfsj; -- grant connect, resource, DATAPUMP_IMP_FULL_DATABASE, DATAPUMP_EXP_FULL_DATABASE -- to userb; GRANT dba to userb; grant read, write on directory DUMP_DIR_D to userb;
エクスポートする3、スキーマの道
expdp usera/usera directory=DUMP_DIR_D dumpfile=exp1.dmp logfile=exp1.log schemas=usera
4、インポートによってスキーマ
impdp userb/userb schemas=usera directory=DUMP_DIR_D dumpfile=imp1.dmp logfile=imp1.log remap_schema=usera:userb
チェック
-- 以新用户userb登录,检查是否成功导入
SQL> select count(*) from user_tables;
COUNT(*)
---------- 126 SQL> select count(*) from user_views; COUNT(*) ---------- 1 SQL> select count(*) from user_sequences; COUNT(*) ---------- 32 SQL> select count(*) from user_triggers; COUNT(*) ---------- 0
スクリプト
$ ssh root@remote_server_ip
$ su - oracle
$ cd /home/oracle/rhuser
$ cat exp1_schemas_usera.sh
#!/bin/bash
if [ "$1" = '' ] then filename=defaultexp else filename=$1 fi dumppathprefix="/home/oracle/rhuser/oracledmp" starttime=`date +'%s'` expdp usera/usera directory=DUMP_DIR_D dumpfile=$filename.dmp logfile=$filename.log schemas=usera endtime=`date +'%s'` res="本次运行时间: "$((endtime-starttime))"s" echo $res>>"$dumppathprefix/$filename.log" echo $res
$ cat imp1_schemas_usera2fsj.sh
#!/bin/bash
if [ "$1" = '' ] then filename=defaultimp else filename=$1 fi if [ "$2" = "" ] then dmp=exp1_schemas else dmp=$2 fi dumppathprefix="/home/oracle/rhuser/oracledmp" starttime=`date +'%s'` impdp userb/userb schemas=usera directory=DUMP_DIR_D dumpfile=$dmp.dmp logfile=$filename.log remap_schema=usera:userb endtime=`date +'%s'` res="本次运行时间: "$((endtime-starttime))"s" echo $res>>"$dumppathprefix/$filename.log" echo $res
話し合います
(以下、読みやすくするために輸出とも呼ばれる)データ・ポンプ・エクスポートは、ダンプ・ファイル・セットと呼ばれるオペレーティング・システム・ファイルのセットにデータおよびメタデータをアンロードするためのユーティリティです。ダンプ・ファイル・セットは、データ・ポンプ・インポート・ユーティリティでインポートすることができます。ダンプ・ファイル・セットには、同じシステム上にインポートすることも、別のシステムに移動し、そこにロードすることができます。
ダンプ・ファイル・セットには、表データ、データベース・オブジェクトのメタデータを含む1つまたは複数のディスク・ファイルで構成された、との情報を制御されます。ファイルは独自のバイナリ形式で書かれています。インポート操作中に、データ・ポンプ・インポート・ユーティリティは、ダンプ・ファイル・セット内の各データベース・オブジェクトを検索するために、これらのファイルを使用しています。
ダンプ・ファイルがサーバーによって書かれているためではなく、クライアントによって、データベース管理者(DBA)は、ファイルが書き込まれるために、サーバーの場所を定義するディレクトリ・オブジェクトを作成する必要があります。Directoryオブジェクトの詳細については、「ダンプファイル、ログ・ファイルおよびSQLファイルのデフォルトの位置」を参照してください。
データ・ポンプ・エクスポートは、エクスポートモードによって決定されたジョブは、データおよびメタデータのサブセットを移動する必要があることを指定することができます。これは、エクスポート・パラメータを介して指定されたデータ・フィルタおよびメタデータ・フィルタを使用して行われます。「エクスポート操作中のフィルタ処理」を参照してください。
あなたがデータ・ポンプ・エクスポートを使用できる様々な方法のいくつかの例を参照するには、「データ・ポンプ・エクスポートの使用例」を参照してください。
エクスポートは、データベースの異なる部分をアンロードするための様々なモードを提供します。モードは、適切なパラメータを使用して、コマンドラインで指定されています。使用可能なモードは、次のセクションで説明します。
- 「フルエクスポートモード」
- 「スキーマ・モード」
- 「表モード」
- 「表領域モード」
- 「トランスポータブル表領域モード」
モードは、適切なパラメータを使用して、コマンドラインで指定されています。使用可能なモードは、次のセクションで説明します。
- 「フルインポートモード」
- 「スキーマ・モード」
- 「表モード」
- 「表領域モード」
- 「トランスポータブル表領域モード」
参照
あるユーザーから別のユーザーへの輸出輸入へ
問題
環境:Oracle 11gの、RedHatの6
ユーザーAは、DBA権限、パスワードのユーザーAであります
総ユーザーAのユーザーの下で輸出のすべての量、および新しく作成したユーザーのユーザーBにインポート
解きます
ディレクトリの作成: create or replace directory DUMP_DIR_D as '/home/oracle/rhuser/oracledmp';
1、環境を復元するために再テストの前に
DROP USER userb cascade;
drop tablespace tbsfsj including contents and datafiles;
2、テーブルスペースとユーザー権限委譲を作成し、
create TABLESPACE tbsfsj DATAFILE '/home/oracle/rhuser/tbsfsj.dbf' -- redhat user size 10M autoextend on maxsize 30G; create user userb identified by userb default tablespace tbsfsj; -- grant connect, resource, DATAPUMP_IMP_FULL_DATABASE, DATAPUMP_EXP_FULL_DATABASE -- to userb; GRANT dba to userb; grant read, write on directory DUMP_DIR_D to userb;
エクスポートする3、スキーマの道
expdp usera/usera directory=DUMP_DIR_D dumpfile=exp1.dmp logfile=exp1.log schemas=usera
4、インポートによってスキーマ
impdp userb/userb schemas=usera directory=DUMP_DIR_D dumpfile=imp1.dmp logfile=imp1.log remap_schema=usera:userb
チェック
-- 以新用户userb登录,检查是否成功导入
SQL> select count(*) from user_tables;
COUNT(*)
---------- 126 SQL> select count(*) from user_views; COUNT(*) ---------- 1 SQL> select count(*) from user_sequences; COUNT(*) ---------- 32 SQL> select count(*) from user_triggers; COUNT(*) ---------- 0
スクリプト
$ ssh root@remote_server_ip
$ su - oracle
$ cd /home/oracle/rhuser
$ cat exp1_schemas_usera.sh
#!/bin/bash
if [ "$1" = '' ] then filename=defaultexp else filename=$1 fi dumppathprefix="/home/oracle/rhuser/oracledmp" starttime=`date +'%s'` expdp usera/usera directory=DUMP_DIR_D dumpfile=$filename.dmp logfile=$filename.log schemas=usera endtime=`date +'%s'` res="本次运行时间: "$((endtime-starttime))"s" echo $res>>"$dumppathprefix/$filename.log" echo $res
$ cat imp1_schemas_usera2fsj.sh
#!/bin/bash
if [ "$1" = '' ] then filename=defaultimp else filename=$1 fi if [ "$2" = "" ] then dmp=exp1_schemas else dmp=$2 fi dumppathprefix="/home/oracle/rhuser/oracledmp" starttime=`date +'%s'` impdp userb/userb schemas=usera directory=DUMP_DIR_D dumpfile=$dmp.dmp logfile=$filename.log remap_schema=usera:userb endtime=`date +'%s'` res="本次运行时间: "$((endtime-starttime))"s" echo $res>>"$dumppathprefix/$filename.log" echo $res
話し合います
(以下、読みやすくするために輸出とも呼ばれる)データ・ポンプ・エクスポートは、ダンプ・ファイル・セットと呼ばれるオペレーティング・システム・ファイルのセットにデータおよびメタデータをアンロードするためのユーティリティです。ダンプ・ファイル・セットは、データ・ポンプ・インポート・ユーティリティでインポートすることができます。ダンプ・ファイル・セットには、同じシステム上にインポートすることも、別のシステムに移動し、そこにロードすることができます。
ダンプ・ファイル・セットには、表データ、データベース・オブジェクトのメタデータを含む1つまたは複数のディスク・ファイルで構成された、との情報を制御されます。ファイルは独自のバイナリ形式で書かれています。インポート操作中に、データ・ポンプ・インポート・ユーティリティは、ダンプ・ファイル・セット内の各データベース・オブジェクトを検索するために、これらのファイルを使用しています。
ダンプ・ファイルがサーバーによって書かれているためではなく、クライアントによって、データベース管理者(DBA)は、ファイルが書き込まれるために、サーバーの場所を定義するディレクトリ・オブジェクトを作成する必要があります。Directoryオブジェクトの詳細については、「ダンプファイル、ログ・ファイルおよびSQLファイルのデフォルトの位置」を参照してください。
データ・ポンプ・エクスポートは、エクスポートモードによって決定されたジョブは、データおよびメタデータのサブセットを移動する必要があることを指定することができます。これは、エクスポート・パラメータを介して指定されたデータ・フィルタおよびメタデータ・フィルタを使用して行われます。「エクスポート操作中のフィルタ処理」を参照してください。
あなたがデータ・ポンプ・エクスポートを使用できる様々な方法のいくつかの例を参照するには、「データ・ポンプ・エクスポートの使用例」を参照してください。
エクスポートは、データベースの異なる部分をアンロードするための様々なモードを提供します。モードは、適切なパラメータを使用して、コマンドラインで指定されています。使用可能なモードは、次のセクションで説明します。
- 「フルエクスポートモード」
- 「スキーマ・モード」
- 「表モード」
- 「表領域モード」
- 「トランスポータブル表領域モード」
モードは、適切なパラメータを使用して、コマンドラインで指定されています。使用可能なモードは、次のセクションで説明します。
- 「フルインポートモード」
- 「スキーマ・モード」
- 「表モード」
- 「表領域モード」
- 「トランスポータブル表領域モード」