在Oracle数据库中能够使用imp和exp命令来执行数据的导入导出(包括表结构和数据),使用imp和exp命令执行导入导出操做必需的是须要安装Oracle数据库,系统安装Oracle数据库,能够识别 dmp / imp 命令,不然系统会不识别imp和exp命令,以下左图所示:sql
装好Oracle后,使用数据库链接工具链接好数据库(我本身使用的是sqldeveloper),执行导入导出命令:数据库
导出:ide
1. 打开cmd;工具
2. 执行命令。命令格式:exp 用户名/密码@数据库IP地址/实力名 file=导出文件路径\文件名.dmp owner=用户名spa
例如:exp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2 file=C:\Users\Administrator\Desktop\20180202.dmp owner=CUSTOMER_SERVICE_ROOT 此处的fdms2是数据库名,此处导出的是整个数据库,如有选择性的导出部分表结构和数据则执行下面的命令:.net
exp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2 file=C:\Users\Administrator\Desktop\20180202.dmp tables=(AAAA,BBBB) server
注意:在执行导出整个数据库时,有些表是空表,没有数据,导出数据时,空表是不会被执行导出的,此时须要对空表作必定的处理:blog
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结果复制继续执行,而后执行导出命令便可导出表结构和数据。cmd
导入:
1.--DBCA 建立Orcl实例
2. --数据库链接工具 sys用户登陆
3.--建立临时表空间(可不作)
create temporary tablespace myth_temp tempfile 'C:\Oracle_space\myth_temp_20171116.dbf'
size 100m autoextend on next 50m maxsize 200m;
4.--建立表空间
create tablespace myth datafile 'C:\Oracle_space\myth_20171116.dbf'
size 200m autoextend on next 100m maxsize 400m;
5--扩展表空间(辅助操做,可不作)
alter tablespace myth add datafile 'C:\Oracle_space\myth_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:\server\201711088.dmp fromuser=uwp_cfgh_root touser=uwp_cfgh_root
若执行导入部分表结构和数据则用下面的命令:
imp CUSTOMER_SERVICE_ROOT/123456@192.168.1.202/fdms2 file=C:\Users\Administrator\Desktop\20180202.dmp tables=(AAAA,BBBB);
参考文档地址:http://blog.csdn.net/micholas_net/article/details/78714589
http://blog.csdn.net/menghuannvxia/article/details/51076930