您的位置:首页 > 数据库 > Oracle

ORACLE_IMPDP_EXPDP生产环境数据泵的使用

2017-11-27 13:47 399 查看
需求:就是建二个用户,拷贝已有的用户的所有对象结构,不需要数据。

      每个用户都要新建表空间和数据文件。

(1)创建二个不同的表空间,注意文件的路径要和其他的一致,大小根据实际情况确定

CREATE TABLESPACE ISSYD DATAFILE

  '/data/ISSYD01.dbf' SIZE 4G

AUTOEXTEND ON NEXT 1G MAXSIZE 31G

LOGGING

ONLINE

EXTENT MANAGEMENT LOCAL AUTOALLOCATE

BLOCKSIZE 8K

SEGMENT SPACE MANAGEMENT AUTO

FLASHBACK ON;

CREATE TABLESPACE BHBK DATAFILE

  '/data/BHBK01.dbf' SIZE 4G AUTOEXTEND ON NEXT 1G MAXSIZE 31G

LOGGING

ONLINE

EXTENT MANAGEMENT LOCAL AUTOALLOCATE

BLOCKSIZE 8K

SEGMENT SPACE MANAGEMENT AUTO

FLASHBACK ON;

(2)创建用户,然后指定默认空间

create user YSG identified by "!QAZ2WSX" default tablespace ISSYD;

select * from dba_tablespaces where tablespace_name='ISSYD';

create user YSG identified by "!QAZ2WSX" default tablespace  BHBK;

select * from dba_tables where tablespace_name='YSG'and owner=' BHBK';

(3)按照schema用户导出,不需要数据。需要加参数content=metadata_only

expdp \'/ AS SYSDBA@OUTDB\' DIRECTORY=backup schemas=ZX_NSBK_NT  content=metadata_only dumpfile=exp_data_ZX20171122.dmp;

(4)导入数据,REMAP_TABLESPACE=ZX_NSBK_NT:ISSYD REMAP_SCHEMA=ZX_NSBK_NT:ISSYD,需要把ZX_NSBK_NT用户导入到ISSYD,需

要把表空间ZX_NSBK_NT导入到ISSYD

impdp \'/ AS SYSDBA@OUTDB\' DIRECTORY=backup  content=metadata_only dumpfile=exp_data_ZX20171122.dmp REMAP_TABLESPACE=ZX_NSBK_NT:ISSYD REMAP_SCHEMA=ZX_NSBK_NT:ISSYD;

impdp \'/ AS SYSDBA@OUTDB\' DIRECTORY=backup  content=metadata_only dumpfile=exp_data_ZX20171122.dmp REMAP_TABLESPACE=ZX_NSBK_NT:BHBK REMAP_SCHEMA=ZX_NSBK_NT:BHBK;

注意:如果没有加REMAP_TABLESPACE=ZX_NSBK_NT:ISSYD参数,会把对象重新导入到以前的表空间里面,加参数之后,就会把对象导入到新的表空间里面。

如果忘记加参数了。可以这样解决,前提是新建的用户,没有数据。

请慎用

alter user ISSYD account lock;

alter user YSG account lock;

drop user ISSYD  cascade;

drop user YSG  cascade;

--DROP TABLESPACE ISSYD INCLUDING CONTENTS AND DATAFILES;

--DROP TABLESPACE YSG   INCLUDING CONTENTS AND DATAFILES;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: