使用data pump驅動的外部表移動數據數據庫
好比咱們有一個報表的數據,準備從一個數據庫A中移動到另外一個數據庫B中,如何實現?oracle
這個問題,咱們使用帶data pump驅動的外部表方式,很容易實現,具體方法以下:get
1.在A庫中,使用data pump驅動建立一個外部表,把報表的數據所有卸載到指定數據文件中:it
1.1 建立一個目錄io
create directory exp_dir as '/home/oracle/';table
grant read,write on directory exp_dir to hr;ast
1.2 把報表數據經過外部表方式卸載到exp_dir目錄下面的兩個文件下面:date
create table extab_emp_dpselect
(employee_id number(4),channel
last_name varchar2(30),
hire_date date,
salary number)
(type oracle_datapump
default directory exp_dir
location ('empdp.exp','empdp1.exp')
)
as
select employee_id,last_name,hire_date,salary from hr.employees;
1.3 查看/home/oracle/ 下,應該產生兩個二精緻文件:
ls /home/oracle/empdp*.exp
2.把 /home/oracle/empdp.exp,/home/oracle/empdp1.exp拷貝到B 庫中
3.在B庫上經過外部表方式,裝載數據
3.1 建立一個目錄
create directory exp_dir as '/home/oracle/';
grant read,write on directory exp_dir to hr;
3.2 裝載數據
create table extab_emp_dp
(employee_id number(4),
last_name varchar2(30),
hire_date date,
salary number)
default directory exp_dir
location ('empdp.exp','empdp1.exp')
)
3.3 查看數據
select * from extab_emp_dp;