Oracle数据库中表的imp&exp

  在Oracle数据库中可以使用imp和exp命令来执行数据的导入导出(包括表结构和数据),使用imp和exp命令执行导入导出操作必需的是需要安装Oracle数据库,系统安装Oracle数据库,可以识别 dmp  /  imp 命令,否则系统会不识别imp和exp命令,如下左图所示:

  装好Oracle后,使用数据库连接工具连接好数据库(我自己使用的是sqldeveloper),执行导入导出命令:

导出:

1. 打开cmd;

2. 执行命令。命令格式:exp 用户名/密码@数据库IP地址/实力名 file=导出文件路径文件名.dmp owner=用户名

例如:exp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2 file=C:UsersAdministratorDesktop20180202.dmp owner=CUSTOMER_SERVICE_ROOT   此处的fdms2是数据库名,此处导出的是整个数据库,若有选择性的导出部分表结构和数据则执行下面的命令:

  exp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2  file=C:UsersAdministratorDesktop20180202.dmp tables=(AAAA,BBBB)  

注意:在执行导出整个数据库时,有些表是空表,没有数据,导出数据时,空表是不会被执行导出的,此时需要对空表做一定的处理:

1. 执行sql  :select table_name from user_tables where NUM_ROWS=0;
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;

2. 将步骤1中执行的sql结果复制继续执行,然后执行导出命令即可导出表结构和数据。

导入:

1.--DBCA 创建Orcl实例

2. --数据库连接工具 sys用户登录

3.--创建临时表空间(可不做)
create temporary tablespace myth_temp tempfile 'C:Oracle_spacemyth_temp_20171116.dbf'
size 100m autoextend on next 50m maxsize 200m;

4.--创建表空间
create tablespace myth datafile 'C:Oracle_spacemyth_20171116.dbf'
size 200m autoextend on next 100m maxsize 400m;

5--扩展表空间(辅助操作,可不做)
alter tablespace myth add datafile 'C:Oracle_spacemyth_20171116.dbf'
size 200m autoextend on;

6--创建用户并制定表空间
create user username identified by 123456 default tablespace myth
temporary tablespace myth_temp

7.--赋权
grant dba to username

8.--WIN + R

9.--CMD

10.--导入命令

imp 新用户名/密码@实例名 file=dmp文件路径文件名.dmp fromuser=导出时的用户名 touser=新用户名

imp uwp_cfgh_root/123456@fdms file=C:server201711088.dmp fromuser=uwp_cfgh_root touser=uwp_cfgh_root

若执行导入部分表结构和数据则用下面的命令:

 imp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2  file=C:UsersAdministratorDesktop20180202.dmp  tables=(AAAA,BBBB);

参考文档地址:http://blog.csdn.net/micholas_net/article/details/78714589          

                         http://blog.csdn.net/menghuannvxia/article/details/51076930

原文地址:https://www.cnblogs.com/hyzasd123/p/8417004.html