数据泵重建用户

栏目: IT技术 · 发布时间: 5年前

内容简介:目的:之前的7个用户默认表空间为user,要将7个用户中的数据转移到新的表空间,并将默认表空间修改为新建的七个表空间。测试库IP 10.66.223.140实例名 tbomnew

目的:之前的7个用户默认表空间为user,要将7个用户中的数据转移到新的表空间,并将默认表空间修改为新建的七个表空间。

测试库IP 10.66.223.140

实例名 tbomnew

用户名:CORE,CFGMGMT,CHGMGMT,BOMMGMT,CUST,MSTDATA,INTEGRATION

1、新建表空间,注意数据文件位置

2、导出数据库用户 sys密码是oracle

3、导入remap tablespace (单个导入)

4、修改用户默认表空间

5、修改用户对表空间权限

grant unlimited tablespace to username;

导入前检查:

查询当前实例

echo $ORACLE_SID

echo

导入目标实例

export ORACLE_SID=bomdb

查询数据字典

select * from dba_directories;

DATA_PUMP_DIR  /oracle/admin/bomdb/dpdump/

查询数据文件位置

select file_name,tablespace_name from dba_data_files;

数据文件位置:  /oracle/oradata/BOMDB

查看以上用户是否存在

select username from dba_users order by created;

存在

查询用户所属默认表空间

select default_tablespace from dba_users where username='CORE';

select default_tablespace from dba_users where username='CFGMGMT';

select default_tablespace from dba_users where username='CHGMGMT';

select default_tablespace from dba_users where username='BOMMGMT';

select default_tablespace from dba_users where username='CUST';

select default_tablespace from dba_users where username='MSTDATA';

select default_tablespace from dba_users where username='INTEGRATION';

USERS

导出数据库用户  "'/ as sysdba'"

expdp "'sys/oracle as sysdba'" dumpfile=core.dmp directory=DATA_PUMP_DIR  schemas=CORE logfile=20200417_core.logfile

expdp "'sys/oracle as sysdba'" dumpfile=cfgmgmt.dmp directory=DATA_PUMP_DIR  schemas=CFGMGMT logfile=20200417_cfgmgmt.logfile

expdp "'sys/oracle as sysdba'" dumpfile=chgmgmt.dmp directory=DATA_PUMP_DIR  schemas=CHGMGMT logfile=20200417_chgmgmt.logfile

expdp "'sys/oracle as sysdba'" dumpfile=bommgmt.dmp directory=DATA_PUMP_DIR  schemas=BOMMGMT logfile=20200417_bommgmt.logfile

expdp "'sys/oracle as sysdba'" dumpfile=cust.dmp directory=DATA_PUMP_DIR  schemas=CUST logfile=20200417_cust.logfile

expdp "'sys/oracle as sysdba'" dumpfile=mstdata.dmp directory=DATA_PUMP_DIR  schemas=MSTDATA logfile=20200417_mstdata.logfile

expdp "'sys/oracle as sysdba'" dumpfile=integration.dmp directory=DATA_PUMP_DIR  schemas=INTEGRATION logfile=20200417_integration.logfile

创建表空间

数据文件挂错盘了,删掉重新建

drop tablespace YT_CORE including datafiles;

DROP TABLESPACE YT_CORE INCLUDING CONTENTS AND DATAFILES;

create tablespace YT_CORE datafile '/oracle/oradata/BOMDB/YT_CORE.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_CFGMGMT datafile '/oracle/oradata/BOMDB/YT_CFGMGMT.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_CHGMGMT datafile '/oracle/oradata/BOMDB/YT_CHGMGMT.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_BOMMGMT datafile '/oracle/oradata/BOMDB/YT_BOMMGMT.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_CUST datafile '/oracle/oradata/BOMDB/YT_CUST.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_MSTDATA datafile '/oracle/oradata/BOMDB/YT_MSTDATA.dbf' size 30G autoextend on next 500M maxsize unlimited

create tablespace YT_INTEGRATION datafile '/oracle/oradata/BOMDB/YT_INTEGRATION.dbf' size 30G autoextend on next 500M maxsize unlimited

删除之前的用户

drop user CORE cascade;

drop user CFGMGMT cascade;

drop user CHGMGMT cascade;

drop user BOMMGMT cascade;

drop user CUST cascade;

drop user MSTDATA cascade;

drop user INTEGRATION cascade;

如果被删除用户还在connected,停掉监听。

重启数据库

删除完之后启监听

导入用户

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=core.dmp REMAP_TABLESPACE=users:YT_CORE  logfile=20200417_core.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=cfgmgmt.dmp REMAP_TABLESPACE=users:YT_CFGMGMT  logfile=20200417_cfgmgmt.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=chgmgmt.dmp REMAP_TABLESPACE=users:YT_CHGMGMT logfile=20200417_chgmgmt.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=bommgmt.dmp REMAP_TABLESPACE=users:YT_BOMMGMT logfile=20200417_bommgmt.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=cust.dmp REMAP_TABLESPACE=users:YT_CUST logfile=20200417_cust.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=mstdata.dmp REMAP_TABLESPACE=users:YT_MSTDATA logfile=20200417_mstdata.logfile

impdp  "'sys/oracle as sysdba'" directory=DATA_PUMP_DIR dumpfile=integration.dmp REMAP_TABLESPACE=users:YT_INTEGRATION logfile=20200417_integration.logfile

修改用户默认表空间

alter user CORE default tablespace YT_CORE;

grant unlimited tablespace to core;

alter user CFGMGMT default tablespace YT_CFGMGMT;

grant unlimited tablespace to cfgmgmt;

alter user CHGMGMT default tablespace YT_CHGMGMT;

grant unlimited tablespace to chgmgmt;

alter user BOMMGMT default tablespace YT_BOMMGMT;

grant unlimited tablespace to bommgmt;

alter user CUST default tablespace YT_CUST;

grant unlimited tablespace to cust;

alter user MSTDATA default tablespace YT_MSTDATA;

grant unlimited tablespace to mstdata;

alter user INTEGRATION default tablespace YT_INTEGRATION;

grant unlimited tablespace to integration;

检查当前用户的默认表空间

select default_tablespace from dba_users where username='CORE';

select default_tablespace from dba_users where username='CFGMGMT';

select default_tablespace from dba_users where username='CHGMGMT';

select default_tablespace from dba_users where username='BOMMGMT';

select default_tablespace from dba_users where username='CUST';

select default_tablespace from dba_users where username='MSTDATA';

select default_tablespace from dba_users where username='INTEGRATION';

遇到的问题:

因为经验不足,单个导入的,所以导致了报错,ORA-39083 ,因为逐个恢复的用户数据,在其他地方没有恢复的用户有关联权限以及约束,后期可以直接逐个执行一遍。

ORA-39083: 对象类型 DEFAULT_ROLE 创建失败, 出现错误:

ORA-01917: 角色 'BOMMGMT' 不存在

数据泵重建用户


以上所述就是小编给大家介绍的《数据泵重建用户》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++ Primer 中文版(第 5 版)

C++ Primer 中文版(第 5 版)

[美] Stanley B. Lippman、[美] Josée Lajoie、[美] Barbara E. Moo / 王刚、杨巨峰 / 电子工业出版社 / 2013-9-1 / CNY 128.00

这本久负盛名的 C++经典教程,时隔八年之久,终迎来史无前例的重大升级。除令全球无数程序员从中受益,甚至为之迷醉的——C++ 大师 Stanley B. Lippman 的丰富实践经验,C++标准委员会原负责人 Josée Lajoie 对C++标准的深入理解,以及C++ 先驱 Barbara E. Moo 在 C++教学方面的真知灼见外,更是基于全新的 C++11标准进行了全面而彻底的内容更新。......一起来看看 《C++ Primer 中文版(第 5 版)》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具