oracleimp命令详细介绍-飞外

oracle中imp命令详细解释

Oracle的导入有用程序(Import utility)同意从数据库提取数据,而且将数据写入操作系统文
件。imp使用的基本格式:imp[username[/password[@service]]],下面例举imp常常使用用
法。

1. 获取帮助

imp help=y

2. 导入一个完整数据库

imp system/manager file=bible_db log=dible_db full=y ignore=y

3. 导入一个或一组指定用户所属的全部表、索引和其它对象

imp system/manager file=seapark log=seapark fromuser=seapark

imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

4. 将一个用户所属的数据导入还有一个用户

imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy

imp system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1, amy1)

5. 导入一个表

imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)

6. 从多个文件导入

imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) log=paycheck,filesize=1G full=y

7. 使用參数文件

imp system/manager parfile=bible_tables.par

bible_tables.par參数文件:

#Import the sample tables used for the Oracle8i Database Administrator's

#Bible.

fromuser=seapark touser=seapark_copy file=seapark log=seapark_import

8. 增量导入(9i中已经取消)

imp system./manager inctype= RECTORE FULL=Y FILE=A


Oracle imp/exp帮助说明

C:Documents and Settingsadministrator exp help=y

Export: Release 9.2.0.1.0 - Production on 星期三 7月 28 17:04:43 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

通过输入 EXP 命令和username/口令,您能够

后接username/口令的命令:

例程: EXP SCOTT/TIGER

或者,您也能够通过输入跟有各种參数的 EXP 命令来控制“导出”

依照不同參数。要指定參数,您能够使用keyword:

格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

例程: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)

或 TABLES=(T1: P1,T1: P2),假设 T1 是分区表

USERID 必须是命令行中的和换行,反而影响性能。

INDEXES。INDEXES參数指定是否导入用户生成的索引。如指定
INDEXES=N,则将提高Import的性能,由于在一个无索引的表中导入数据要快得
多。注意,假设首先用INDEXFILE=返回Import,来在请求的Import模式下提取
索引创建命令,再将其写入指定的文件,那么以后仍可重建索引。

使用INDEXFILE选项时,不会导入数据对象。可对输出文件()进行编辑,
并将其作为一个SQL脚本使用,以便在Import之后创建索引。

另外还能够通过调整一下參数提高exp和imp的性能

. 改动sqlnet.ora在里面增加trace_level_client=off
. 运行dbmspool.sql然后SQL begin
SQL dbms_shared_pool.sizes(300);

SQL end;

SQL /


. sql ALTER SYSTEM FLUSH SHARED_POOL
. sql alter system set LOG_CHECKPOINT_INTERVAL =
redologfilesizebytes/512bytes=1000
也能够改动log_checkpoint_timeout=24000


. sql alter system set fast_start_mttr_target =24000
. sql alter system set pga_aggregate_target=100M


没有下commit=y所以唯独通过

A.select undtsn,undoblks from v$$undostat;的变化来看资料又没有进去了

B. 在imp时通过设定 FEEDBACK=N笔资料来显示Imp的进度

重整的时候假设要drop 掉table重建的话,一定要注意该table上有没有FK等

在EXP /IMP的时候为了加速须要将index=n參数加进exp/imp运行脚本,这样的话在
做完imp后须要recreate index 事实上资料量大的话recreate也非常花时间,故能够通过在
create index 的脚本里面添加parallel 5;来提速


另I/O能够在Windows 的效能的地方看到

十一.IMPORT时的对象倒入顺序

在倒入数据时,ORACLE有一个特定的顺序,可能随数据库版本号不同而有所变化,

可是如今是这样的。

1. Tablespaces 14. Snapshot Logs

2. Profiles 15. Job Queues

3. Users 16. Refresh Groups

4. Roles 17. Cluster Definitions

5. System Privilege Grants 18. Tables (also grants,comments,

6. Role Grants indexes, constraints, auditing)

7. Default Roles 19. Referential Integrity

8. Tablespace Quotas 20. POSTTABLES actions

9. Resource Costs 21. Synonyms

10. Rollback Segments 22. Views

11. Database Links 23. Stored Procedures

12. Sequences 24. Triggers, Defaults and Auditing

13. Snapshots

按这个顺序主要是解决对象之间依赖关系可能产生的问题。TRIGGER最后导入,所以在
INSERT数据到数据库时不会激发TRIGGER。在导入后可能会有一些状态是INVALID的
PROCEDURE,主要是IMPORT时会影响一些数据库对象,而IMPORT并不又一次编译
PROCEDURE,从而造成这样的情况,能够又一次编译之,就能解决这个问题。

十二. Imp/exp的模糊导入导出

前段时间在网上看到一篇关于imp/exp模糊导入导出的文章,甚感兴趣,今
天中午做了一个測试,感觉Oracle实在是博大,有非常多东西不用的话,对
我们来说永远是一个陌生的地带。揭去面纱,也就那么回事!

说明:使用通配符导出的最大长处,就是当你的库中有非常多表,但你又不想
全导,仅仅导当中一部分的时候,你能够尽可能的少写部分代码,提供工作效
率!

我一般喜欢以演示例子的方式展现或表达一些东西,这样大家可能了解/掌握的
更快下面!毕竟非常多东西我们大部分同志知其然就能够了!嘿嘿。^|^

备注:该项特性在9i以后新增

測试步骤如下:

SQL conn study/study

已连接。

SQL


SQL create table toms_test_1 (no int);

表已创建。

SQL create table toms_test_2 (no int);

表已创建。

SQL create table toms_test_3 (no int);

表已创建。

SQL insert into toms_test_1 values(1);

已创建 1 行。

SQL insert into toms_test_2 values(2);

已创建 1 行。

SQL insert into toms_test_3 values(3);

已创建 1 行。

SQL commit;

提交完毕。

Microsoft Windows XP [版本号 5.1.2600]

(C) 版权全部 1985-2001 Microsoft Corp.

C:Documents and Settings e:

E: exp study/study tables=(study.toms_test%) file=toms_test.dmp
rows=y

Export: Release 9.2.0.1.0 - Production on 星期三 6月 7 12:42:32 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表 TOMS_TEST_1 1 行被导出

. . 正在导出表 TOMS_TEST_2 1 行被导出

. . 正在导出表 TOMS_TEST_3 1 行被导出

在没有警告的情况下成功终止导出。

SQL

SQL drop table toms_test_1;

表已丢弃。

SQL drop table toms_test_2;

表已丢弃。

SQL drop table toms_test_3;

表已丢弃。

SQL

SQL select table_name from tabs where table_name like 'TOMS_TEST%';

未选定行

SQL


E: imp study/study file=toms_test.dmp fromuser=study touser=study

Import: Release 9.2.0.1.0 - Production on 星期三 6月 7 12:44:01 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完毕ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. . 正在导入表 "TOMS_TEST_1" 1行被导入

. . 正在导入表 "TOMS_TEST_2" 1行被导入

. . 正在导入表 "TOMS_TEST_3" 1行被导入

成功终止导入,但出现警告。

E:

SQL select table_name from tabs where table_name like 'TOMS_TEST%';

TABLE_NAME

------------------------------

TOMS_TEST_1

TOMS_TEST_2

TOMS_TEST_3

SQL select * from toms_test_1;

NO

----------

1

SQL select * from toms_test_2;

NO

----------

2

SQL select * from toms_test_3;

NO

----------

3

SQL

SQL select table_name from tabs where table_name like '%TEST%';

TABLE_NAME

------------------------------

TOMS_TEST_1

TOMS_TEST_2

TOMS_TEST_3

SQL

E: exp study/study tables=(study.%test%) file=test.dmp rows=y

Export: Release 9.2.0.1.0 - Production on 星期三 6月 7 12:51:56 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表 TOMS_TEST_1 1 行被导出

. . 正在导出表 TOMS_TEST_2 1 行被导出

. . 正在导出表 TOMS_TEST_3 1 行被导出

在没有警告的情况下成功终止导出。

E:

SQL drop table toms_test_1;

表已丢弃。

SQL drop table toms_test_2;

表已丢弃。

SQL drop table toms_test_3;

表已丢弃。

SQL

E: imp study/study file=test.dmp fromuser=study touser=study

Import: Release 9.2.0.1.0 - Production on 星期三 6月 7 12:53:11 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完毕ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. . 正在导入表 "TOMS_TEST_1" 1行被导入

. . 正在导入表 "TOMS_TEST_2" 1行被导入

. . 正在导入表 "TOMS_TEST_3" 1行被导入

成功终止导入,但出现警告。

E:

SQL select table_name from tabs where table_name like '%TEST%';

TABLE_NAME

------------------------------

TOMS_TEST_1

TOMS_TEST_2

TOMS_TEST_3

SQL

E: exp study/study tables=(%test%) file=test.dmp rows=y

Export: Release 9.2.0.1.0 - Production on 星期三 6月 7 13:08:56 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表 TOMS_TEST_1 1 行被导出

. . 正在导出表 TOMS_TEST_2 1 行被导出

. . 正在导出表 TOMS_TEST_3 1 行被导出

在没有警告的情况下成功终止导出。

E:

SQL conn toms/toms

已连接。

SQL create table stu_1 (no int);

表已创建。

SQL create table stu_2 (no int);

表已创建。

SQL insert into stu_1 values(1);

已创建 1 行。

SQL insert into stu_2 values(2);

已创建 1 行。

SQL commit;

提交完毕。

E: exp study/study tables=(%test%,toms.stu%) file=test.dmp rows=y

Export: Release 9.2.0.1.0 - Production on 星期三 6月 7 13:11:05 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表 TOMS_TEST_1 1 行被导出

. . 正在导出表 TOMS_TEST_2 1 行被导出

. . 正在导出表 TOMS_TEST_3 1 行被导出

当前的用户已更改为 TOMS

. . 正在导出表 STU_1 1 行被导出

. . 正在导出表 STU_2 1 行被导出

在没有警告的情况下成功终止导出。

SQL conn study/study

已连接。

SQL drop table toms_test_1;

表已丢弃。

SQL drop table toms_test_2;


表已丢弃。

SQL drop table toms_test_3;

表已丢弃。

SQL select table_name from tabs where table_name like '%TEST%';

未选定行

SQL conn toms/toms

已连接。

SQL drop table stu_1;

表已丢弃。

SQL drop table stu_2;

表已丢弃。

SQL select table_name from tabs where table_name like '%STU%';

未选定行

SQL

E: imp study/study file=test.dmp fromuser=study touser=study
tables=(%test%)

Import: Release 9.2.0.1.0 - Production on 星期三 6月 7 13:15:22 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完毕ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. . 正在导入表 "TOMS_TEST_1" 1行被导入

. . 正在导入表 "TOMS_TEST_2" 1行被导入

. . 正在导入表 "TOMS_TEST_3" 1行被导入

成功终止导入,但出现警告。

SQL conn study/study

已连接。

SQL select table_name from tabs where table_name like '%TEST%';

TABLE_NAME

------------------------------

TOMS_TEST_1

TOMS_TEST_2

TOMS_TEST_3

SQL select * from toms_test_1;

NO

----------

1

SQL select * from toms_test_2;

NO

----------

2


SQL select * from toms_test_3;

NO

----------

3

SQL

E: imp study/study fromuser=toms touser=toms file=test.dmp
tables=(stu%)

Import: Release 9.2.0.1.0 - Production on 星期三 6月 7 13:23:49 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完毕ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. 正在将TOMS的对象导入到 TOMS

. . 正在导入表 "STU_1" 1行被导入

. . 正在导入表 "STU_2" 1行被导入

成功终止导入,但出现警告。

E:

SQL conn toms/toms

已连接。

SQL select table_name from tabs where table_name like '%STU%';

TABLE_NAME

------------------------------

STU_1

STU_2

SQL select * from stu_1;

NO

----------

1

SQL select * from stu_2;

NO

----------

2

SQL

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yjq8116/archive/2009/03/26/4025847.aspx