oracle expdp导出和impdp导入使用方法
本篇介绍一下oracle expdp导出、impdp导入的使用方法 准备工作 导出-expdp 导入-impdp 导出-expdp参数说明 导入-impdp参数说明 准备工作 oracle中的expdp导出、impdp导入的使用之前,都得先完成以下三个步骤 第一步 以管理员身份,创建逻辑目录 create direc
本篇介绍一下oracle expdp导出、impdp导入的使用方法
准备工作
导出-expdp
导入-impdp
导出-expdp参数说明
导入-impdp参数说明
准备工作
oracle中的expdp导出、impdp导入的使用之前,都得先完成以下三个步骤
第一步 以管理员身份,创建逻辑目录
create directory my_dbdata as 'D:/my_dbdata';
第二步 查看逻辑目录是否创建成功
此时应该在再查看“D:/my_dbdata”这个磁盘物理路径是否存在。因为oracle创建时并不关心该磁盘目录是否存在,如果不存在,则在后续的操作中会报错
第三步 赋予导出用户的逻辑目录操作权限
比如我要导出一个用户名为“answer”的库,则需要用管理员来赋予“answer”用户对于逻辑目录的操作权限。
grant read,write on directory my_dbdata to answer;
操作系统为windows,则打开cmd窗口,若为linux或其他unix系统,则直接在命令行操作
特别注意:在expdp、impdp命令使用时,不要习惯性的在命令末尾加上分号“;”,会导致不经意间出现错误。
曾经我进行导入操作是,最后加了个分号,语句如下:
impdp eppapp0805/eppapp0805 DIRECTORY=epp_data DUMPFILE=eppapptest_88_20130805.dmp remap_schema=eppapptest:eppapp0805;
看见了没,最后那个参数是remap_schema=eppapptest:eppapp0805,表示该dmp包是从eppapptest用户导出来的,要把这个dmp包导入到用户eppapp0805去,结果,导入时oracle把“eppapp0805;”连分号一起当成用户名了,一看现有库中不存在这个用户,就创建新用户,然后就创建了一个带分号结尾的用户。而这个用户还不能登录,因为有特殊字符,非常的郁闷
导出-expdp
1)按用户导出
expdp answer/answer@orcl schemas=answer dumpfile=answer.dmp DIRECTORY=my_dbdata
2)按表名导出
expdp answer/answer@orcl TABLES=a_answer,a_question dumpfile=m_table.dmp DIRECTORY=my_dbdata
3)按查询条件导出
expdp answer/answer@orcl directory=my_dbdata dumpfile=exp_by_query.dmp tables=a_answer query='WHERE id < 20'
4)按表空间导出
expdp answer/answer DIRECTORY=my_dbdata DUMPFILE=tablespace.dmp TABLESPACES=user
5)整个数据库导出
expdp answer/answer DIRECTORY=my_dbdata DUMPFILE=full.dmp FULL=y
导入-impdp
1)导入到指定用户下
impdp answer/answer DIRECTORY=my_dbdata DUMPFILE=answer.dmp SCHEMAS=answer
2)如果导出的用户表空间跟导入的用户表空间不一致,则按下面的方法导入
impdp answer/answer DIRECTORY=my_dbdata DUMPFILE=answer.dmp REMAP_SCHEMA=user1(导出时的所属用户名):user2(导入时的所属用户名)
3)只导入dmp文件中的某几个表
impdp answer/answer DIRECTORY=my_dbdata DUMPFILE=answer.dmp TABLES=a_answer,a_question
4)导入表空间
impdp answer/answer DIRECTORY=my_dbdata DUMPFILE=tablespace.dmp TABLESPACES=user
5)导入整个数据库
impdb answer/answer DIRECTORY=my_dbdata DUMPFILE=full.dmp FULL=y;
6)追加数据
impdp answer/answer DIRECTORY=my_dbdata DUMPFILE=answer.dmp SCHEMAS=answer TABLE_EXISTS_ACTION=APPEND
导出-expdp参数说明
CONTENT |
用于指定要导出的内容,默认为ALL CONTENT=ALL:导出对象定义和所有数据 DATA_ONLY:只导出数据 METADATA_ONLY:只导出对象定义 |
DIRECTORY |
指定逻辑目录的名称,为之前创建的逻辑目录。 |
EXCLUDE |
用于指定执行操作时释放要排除的对象类型或相关对象 EXCLUDE=object_type[:name_clause] [,….] object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象 例:EXCLUDE=TABLE:EMP EXCLUDE和INCLUDE不能同时使用 |
INCLUDE |
导出时包含指定的类型 例:INCLUDE=TABLE_DATA, INCLUDE=TABLE:"LIKE 'TAB%'" INCLUDE=TABLE:”NOT LIKE ‘TAB%’”… EXCLUDE和INCLUDE不能同时使用 |
FILESIZE |
指定导出文件的大小,默认为0,表示没有大小限制(单位为bytes) |
TABLESPACE |
指定一个表空间导出 |
QUERY |
QUERY=[schema.] schema为指定方案名,table_name为指定表名,query_clause用于指定条件限制子句 例:expdp answer/answer directory=my_dbdata dumpfiel=answer.dmp tables=a_answer query=’WHERE deptno=20’ QUERY选项不能与CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES等选项同时使用. |
PARALLEL |
并行操作:指定执行导出操作的并行进程个数,默认值为1 您可以通过PARALLEL 例:expdp answer/answer tables=a_answer directory=my_dbdata dumpfile=expCASES_%U.dmp parallel=4 注意:dumpfile 在并行模式下,状态屏幕将显示四个工作进程。(在默认模式下,只有一个进程是可见的)所有的工作进程同步取出数据,并在状态屏幕上显示它们的进度。 分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的。否则,与维护Data |
导入-impdp参数说明
TABBLE_EXISTS_ACTION |
TABBLE_EXISTS_ACTION={SKIP SKIP:导入时会跳过已存在的对象 APPEND:导入时会追加数据 TRUNCATE:导入时会截断表,然后追加新的数据 REPLACE:导入时会删除已存在的表,重建表再追加数据 |
REMAP_SCHEMA |
用于将源方案中的所有对象装载到目标方案中。 例:如果dmp文件导出时对应用户名为 user1, 导入时对应用户名为user2, 则因为用户名不一致而无法导入,需要这样用 REMAP_SCHEMA=user1:user2 |
REMAP_TABLESPACE |
将源表空间的所有对象导入到目标表空间 REMAP_TABLESPACE=source_tablespace:target:tablespace |
REMAP_DATAFILE |
将源数据文件转变为目标数据文件,在不同平台之间搬移表空间可能需要该选项 REMAP_DATAFIEL=source_datafie:target_datafile |

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Oracle Tablespaceサイズを照会するには、次の手順に従ってください。クエリを実行して、TableSpace名を決定します。DBA_TABLESPACesからTableSpace_Nameを選択します。クエリを実行してテーブルスペースのサイズをクエリします:sum(bytes)をtotal_size、sum(bytes_free)asavail_space、sum(bytes) - sum(bytes_free)as sum(bytes_free)as dba_data_files from tablespace_

Oracle View暗号化により、ビュー内のデータを暗号化でき、それにより機密情報のセキュリティが強化されます。手順には以下が含まれます。1)マスター暗号化キー(MEK)の作成。 2)暗号化されたビューを作成し、暗号化されるビューとMEKを指定します。 3)暗号化されたビューにアクセスすることをユーザーに許可します。暗号化されたビューがどのように機能するか:ユーザーが暗号化されたビューを求めてクエリをするとき、OracleはMEKを使用してデータを復号化し、認定ユーザーのみが読み取り可能なデータにアクセスできるようにします。

Oracleでインスタンス名を表示するには3つの方法があります。「sqlplus」と「v $ instanceからselect instance_name;」を使用します。」コマンドラインのコマンド。 「show instance_name;」を使用しますSQL*Plusのコマンド。オペレーティングシステムのタスクマネージャー、Oracle Enterprise Manager、またはオペレーティングシステムを介して、環境変数(LinuxのOracle_Sid)を確認してください。

Oracleインストール障害のためのアンインストールメソッド:Oracleサービスを閉じ、Oracleプログラムファイルとレジストリキーを削除し、Oracle環境変数をアンインストールし、コンピューターを再起動します。アンインストールが失敗した場合、Oracle Universal Uninstallツールを使用して手動でアンインストールできます。

Oracleで時間を取得するには、次の方法があります。Current_Timestamp:現在のシステム時間を秒に正確に返します。 systimestamp:current_timestampよりも正確で、ナノ秒。 sysdate:時間部分を除く現在のシステム日付を返します。 to_char(sysdate、 'yyy-mm-dd hh24:mi:ss'):現在のシステムの日付と時刻を特定の形式に変換します。抽出:1年、月、時間など、時間の値から特定の部分を抽出します。

データインポート方法:1。SQLLOADERユーティリティを使用します。データファイルを準備し、制御ファイルを作成し、SQLLoaderを実行します。 2。IMP/EXPツールを使用します。データをエクスポートし、データをインポートします。ヒント:1。ビッグデータセットに推奨されるSQL*ローダー。 2。ターゲットテーブルが存在する必要があり、列定義が一致します。 3。インポート後、データの整合性を検証する必要があります。

Oracleでユーザーを作成するには、次の手順に従ってください。Createユーザーステートメントを使用して新しいユーザーを作成します。助成金ステートメントを使用して必要な権限を付与します。オプション:リソースステートメントを使用してクォータを設定します。デフォルトの役割や一時テーブルスペースなど、他のオプションを構成します。

Oracleでは、forループループは動的にカーソルを作成できます。手順は次のとおりです。1。カーソルタイプを定義します。 2。ループを作成します。 3.カーソルを動的に作成します。 4。カーソルを実行します。 5。カーソルを閉じます。例:カーソルをサイクルごとに作成して、上位10人の従業員の名前と給与を表示できます。
