文章目录
前言
最近需要导入一个dmp文件到oracle数据库,了解到不少的技巧。
导入dmp文件的正确形式
- (1)新建表空间(如果已经有预留的表空间可以直接使用,不用新建。(最好新建一个))
首先,进入dba 用户,我这里使用sys 这个账户,密码输入正确的即可。选为dba用户登陆,连接地址具体看实际oracle服务器地址和实例。
--创建永久表空间 create tablespace TSP_INFECT --表空间名称 datafile 'D:\app\LK\oradata\orcl\TSP_INFECT.DBF' --文件路径及文件名 size 500M --表空间大小 AUTOEXTEND ON NEXT 50M --每次自动扩展50M ; - (2)新建用户
找到 Users ,我们新建一个


根据你需要的配置,名称就是连接oracle 的用户名,把默认的表空间选择为 刚才创建的表空间

为了让这个用户用着方便,直接把角色权限设置成 dba

配置好,应用即可。
使用我们刚才创建的用户,重新登陆oracle数据库 - (3)导入dmp 文件


配置下我们的导入属性

选择导入的dmp 文件,点击导入即可

注意: 缓存区给大点,要不然导入大的库,真的很慢
统计,选择 “无” ,就不会导入数据库统计信息。
等待cmd窗口,可以看到导入过程。
出现的问题和解决方式
ORACLE导入遇到ORACLE错误959解决方法
IMP-00017: 由于 ORACLE 错误 6550解决办法
关于表空间的
- 我们创建的表空间叫什么名称,存储在什么位置,你可能想跟服务器中的其他表空间设置在一个位置。
我们可以查询一下,根据之前的表空间名称
SELECT * FROM Dba_Data_Files ddf WHERE ddf.tablespace_name = 'TablespaceName'; --以上SQL代码可以查询出表空间的所在路径和表空间的其他信息
- 创建表空间错误了,怎么删除
参考网址:https://www.cnblogs.com/Alanf/p/9485550.html
--删除空的表空间,但是不包含物理文件 drop tablespace tablespace_name; --删除非空表空间,但是不包含物理文件 drop tablespace tablespace_name including contents; --删除空表空间,包含物理文件 drop tablespace tablespace_name including datafiles; --删除非空表空间,包含物理文件 drop tablespace tablespace_name including contents and datafiles; --如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;
如果我们只想导入 dmp 文件中的某张表怎么办?
使用命令可以直接设置需要导入那张表。
imp name/psswd@orcl file=xxx.dmp log=load.log TABLES=table_name

PL/SQL developer 11.0注册码

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/214686.html原文链接:https://javaforall.net
