oracle数据泵迁移

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据泵迁移宏康

注:导出源机器下称a机,导入目标机器下称b机。这里以核心库为例子,另两个库只加注释说明。

1.环境

迁移旧数据库的用户

10.50.100.11核心数据库(hkprdb):HKAPP、HKLIS、LISACCOUNT和LIS_MONITOR、HKFXQ

迁移后新数据库的用户

核心数据库(hkprdb):HKAPP、HKLIS、LISACCOUNT和LIS_MONITOR、HKFXQ 财务数据库(hkaccdb):ACC_MONITOR、HKACCOUNT、HKLIFE、HKYSS和HKINVTPRD (旧投资库中的HK555投资用户)。

资讯数据库(hkinvt):FCDB。

确认登陆数据库的库名和语言

cat /etc/oratab

export ORACLE_UNQNAME=hkinvt

export ORACLE_SID=hkinvt

echo $NLS_LANG

SQL> select userenv('language') from dual;

2.统计数据库信息

最后通过统计下的信息比较a库和b库的数据差别,用以验证数据完整性

三个库分别更换in后的用户

('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ')

('ACC_MONITOR','HKACCOUNT','HKLIFE','HKYSS','HKINVTPRD')

(‘FCDB’ ,’HK555’)

set lines200

set pagesize 5000

col db_link for a50

col host for a150

表:

select OWNER,TABLE_NAME,TABLESPACE_NAME,STATUS,NUM_ROWS from

dba_tables where owner in

('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ') order by OWNER,TABLE_NAME;

权限:

select * from DBA_SYS_PRIVS where grantee in

('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ') order by GRANTEE,PRIVILEGE;

同义词:

select * from dba_synonyms where table_owner in

('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ') order by TABLE_OWNER,TABLE_NAME;

数据库链接:

select * from dba_db_links order by OWNER,CREATED;

无效对象:

select owner,object_name,OBJECT_TYPE,STATUS from dba_objects where owner in ('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ') and status='INVALID' order by owner,object_name;

2.1. 统计表空间数据文件大小

根据要求,怕数据文件过大导致读写性能下降,所以每个数据文件10G且关闭自动扩展。因为投资的一个用户要迁移到财务上,所以建表空间时注意将该对象的相关表空间建到财务上。

核心

select

ername,t.TABLESPACE_NAME,f.FILE_NAME,f.BYTES/1024/1024/1024 from dba_usersu,DBA_TABLESPACESt,dba_data_files f where

u.DEFAULT_TABLESPACE=t.TABLESPACE_NAME and

t.TABLESPACE_NAME=f.TABLESPACE_NAME and ername in

('HKAPP','HKLIS','LISACCOUNT','LIS_MONITOR','HKFXQ') order by

ername,t.TABLESPACE_NAME,f.FILE_NAME;

财务

select

ername,t.TABLESPACE_NAME,f.FILE_NAME,f.BYTES/1024/1024/1024 from dba_usersu,DBA_TABLESPACESt,dba_data_files f where

u.DEFAULT_TABLESPACE=t.TABLESPACE_NAME and

t.TABLESPACE_NAME=f.TABLESPACE_NAME and ername in

('ACC_MONITOR','HKACCOUNT','HKLIFE','HKYSS') order by

ername,t.TABLESPACE_NAME,f.FILE_NAME;

投资

select

ername,t.TABLESPACE_NAME,f.FILE_NAME,f.BYTES/1024/1024/1024 from dba_usersu,DBA_TABLESPACESt,dba_data_files f where

u.DEFAULT_TABLESPACE=t.TABLESPACE_NAME and

t.TABLESPACE_NAME=f.TABLESPACE_NAME and ername in ('FCDB','hk555') order by ername,t.TABLESPACE_NAME,f.FILE_NAME;

2.2. 建表语句,新库按照源大小建表空间

select 'create tablespace '||TABLESPACE_NAME||' logging datafile

''/oradata/'||TABLESPACE_NAME||'.dbf'' size 10G autoextend off;' from dba_tablespaces order by TABLESPACE_NAME;

select 'alter tablespace '||TABLESPACE_NAME||' add datafile

''/oradata/'||TABLESPACE_NAME||'.dbf'' size 10G autoextend off;' from dba_tablespaces order by TABLESPACE_NAME;

2.3. 建立目录

分别在a机和b机查询建立目录

select * from dba_directories;

如不存在合适目录则建立新目录

create or replace directory dump as '/u01/dump';

grantread,write on directory dump to system;

3. 导出数据

核心:18:11:06-18:22:49

expdp system/orac1e directory=dump dumpfile=hkprdb20141205.dmp logfile=lkydb20150109_expdp.log

schemas=hkapp,hklis,lisaccount,lis_monitor,hkfxq

财务:18:15:46-18:19:51

expdp system/orac1e_HK directory=DBBAKUP_DIR dumpfile=hkaccdb20141205.dmp logfile=hkaccdb20141205_expdp.log schemas=acc_monitor,hkaccount,hklife,hkyss

投资:18:20:35-20:25:15

expdp system/orac1e_HK directory=DUMP_DIR

相关文档
最新文档