【Oracle数据库】_expdp方法导入导出数据库

说明

在工作中使用Oracle11g的时候遇到了导入数据库表的问题,当时的数据库表使用的是expdp方法导出的,我在导入数据库的时候使用的exp对应的imp方式导入,结果遇到了好多问题。解决完成之后把expdp方法对应的导入导出记录下来,以防自己以后使用的时候再入坑。

步骤一、导出准备

C:\Users\Administrator>sqlplus sys as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期一 10月 21 14:42:27 2019

Copyright © 1982, 2010, Oracle. All rights reserved.

输入口令:123456 (MSI 密码)

连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> connect as sysdba
请输入用户名: system
输入口令:(默认隐藏)
已连接。

SQL> create directory expnc_dir as ‘C:\oracle11g’; //创建导出地址

SQL> Grant read,write on directory expnc_dir to UO_EC_TEST1; //赋予相关用户权限

SQL> Grant read,write on directory expnc_dir to UO_EC_LOG;

SQL> Grant read,write on directory expnc_dir to UO_WORKFLOW_NEW;

SQL> quit
从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options 断

步骤二、开始导出

expdp UO_EC_TEST1/UO_EC_TEST1(用户的账号密码)directory=expnc_dir dumpfile=UO_EC_TEST1.dmp schemas=UO_EC_TEST1 logfile=UO_EC_TEST1.log

expdp UO_EC_LOG/UO_EC_LOG(用户的账号密码)directory=expnc_dir dumpfile=UO_EC_LOG.dmp schemas=UO_EC_LOG logfile=UO_EC_LOG.log

expdp UO_WORKFLOW_NEW/UO_WORKFLOW_NEW(用户的账号密码) directory=expnc_dir dumpfile=UO_WORKFLOW_NEW.dmp schemas=UO_WORKFLOW_NEW logfile=UO_WORKFLOW_NEW.log

步骤三、导入准备

C:\Users\wangtao>sqlplus sys as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期一 10月 21 14:42:27 2019

Copyright © 1982, 2010, Oracle. All rights reserved.

输入口令:

连接到:
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production

SQL> connect as sysdba
请输入用户名: system
输入口令:(默认隐藏)
已连接。
SQL> create directory expnc_dir as ‘F:\oracle11g’;
目录已创建。

SQL> Grant read,write on directory expnc_dir to UO_EC_TEST1;
授权成功。

SQL> Grant read,write on directory expnc_dir to UO_EC_LOG;
授权成功。

SQL> Grant read,write on directory expnc_dir to UO_WORKFLOW_NEW;
授权成功。

SQL> quit
从 Oracle Database 11g Release 11.2.0.1.0 - 64bit Production 断开

步骤四、开始导入

impdp UO_EC_TEST1/UO_EC_TEST1(用户的账号密码) directory=expnc_dir dumpfile=UO_EC_TEST1.DMP schemas=UO_EC_TEST1

impdp UO_EC_LOG/UO_EC_LOG(用户的账号密码) directory=expnc_dir dumpfile=UO_EC_LOG.DMP schemas=UO_EC_LOG

impdp UO_WORKFLOW_NEW/UO_WORKFLOW_NEW(用户的账号密码) directory=expnc_dir dumpfile=UO_WORKFLOW_NEW.DMP schemas=UO_WORKFLOW_NEW

步骤五、批量编译视图

create or replace procedure compile_invalid_views(
p_owner varchar2 – 所有者名称,即 SCHEMA
) as

–编译某个用户下的无效视图

str_sql varchar2(200);

begin
for invalid_views in (select object_name from all_objects
where status = ‘INVALID’ and object_type = ‘VIEW’ and owner=upper(p_owner))
loop
str_sql := ‘alter view ‘||p_owner||’.’ ||invalid_views.object_name || ’ compile’;
begin
execute immediate str_sql;
exception
–When Others Then Null;
when OTHERS Then
dbms_output.put_line(sqlerrm);
end;
end loop;
end;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值