一、什么是dmp文件

在oracle中,dmp文件是数据库导出的文件,常用于数据库的备份和迁移。一般会用exp命令来导出,用imp命令来导入也就是恢复数据库。

二、dmp文件导入

常用于数据库迁移使用,当需要额外部署新的服务器时,需要将提前备份好的dmp文件导入到新的环境中。

创建用户

在导入之前,我们需要新建一个用户,用于存放我们的dmp数据
  • 登录到linux服务器 切换oracle用户

su - oracle
  • 登录到oracle数据库

sqlplus / as sysdba--以操作系统权限认证的oracle sys管理员登陆
  • 切换到数据库存储端(pdb)

alter session set container=idms​alter session 切换容器
  • 创建数据库用户

create user  identified by  default tablespace  -- 默认表空间temporary tablespace temp -- 临时表空间​create user ecdsprodtest0412 identified by ecdsprodtest0412 default tablespace ITREASURY temporary tablespace temp;
  • 用户授权

授予角色语法:grant  to ;CONNECT 角色,--拥有Connect权限的用户只可以登录ORACLE(仅具有创建SESSION的权限),不可以创建实体,不可以创建数据库结构。RESOURCE 角色,--是授予开发人员的。拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。DBA角色,--是授予数据库维护人员的。拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。​grant connect,resource,dba to ecdsprodtest0412;
  • 创建dmp文件存储目录并赋权

新建directory的语法CREATE [OR REPLACE] DIRECTORY directorydirectoryName AS 'pathname';​create or replacedirectorydmpdir as '/oradata';grant read ,write on directory dmpdir to ecdsprodtest0412;
  • 切换root用户,赋予读写权限

mkdir /oradatachmod -R 777 /oradata

导入dmp文件

  • 将dmp文件上传到/oradata目录下 切换到oracle用户 执行导入dmp命令

impdpecdsprodtest0412/ecdsprodtest0412 directory=dmpdir dumpfile=hbisdp_230411.dmp remap_schema=hbisdp:ecdsprodtest0412 logfile=20230412.log;​directory --此路径可以理解为实际绝对路径在oracle数据库里的别名,是导入文件的存储位置DUMPFILE --此参数为需要导入的dmp文件名REMAP_SCHEMA --当把用户A的对象导入到用户B时,使用此参数REMAP_TABLESPACE --用于进行数据的表空间迁移。把前一个表空间中的对象导入到冒号后面的表空间LOGFILE--指定导入日志名称

至此导入dmp文件完成

三、导入报错处理

需删除当前创建的用户,重新执行上面的导入步骤

删除用户命令

drop user ECDSPRODTEST0412 cascade;​表示删除用户ECDSPRODTEST0412,同时删除 ECDSPRODTEST0412 用户下的所有数据对象,如 table, view 等​cascade 介绍与用法 ( oracle)级联删除,比如你删除某个表的时候后面加这个关键字,会在删除这个表的同时删除和该表有关系的其他对象

此时可能会出现这个问题,解决方案:

1)查看用户的连接状况

SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='ECDSPRODTEST0412';

如果报错

则查询所有的oracle用户,找到要删除的用户对应的名字

select * from all_users;

再次执行

SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='ECDSPRODTEST0412';

2)删除用户所有连接的session

alter system kill session '213,4036';

最后再次删除用户

drop user ECDSPRODTEST0412 cascade;
Copyright © maxssl.com 版权所有 浙ICP备2022011180号