Oracle数据库的导入和导出dmp文件

时间:2024-02-15 14:33:12

dmp文件的导出

首先,我们先了解dmp文件的导出

dmp文件导出一般用的比较多的是三种,分别是: 导出整个数据库实例的所有数据,导出指定用户的所有的表,导出指定表.

我们以自己的数据库为例,假设我们的数据库的实例为"Oracle"

可以通过"任务管理器---->服务"中查看自己的数据库实例   

一般信息是 已启用  自动 本地系统

打开cmd命令行  :  

1: 将数据库Oracle完全导出,用户名system密码manager导出到 c:\daochu.dmp中  

exp system/manager@Oracle file=c:\daochu.dmp full=y

2: 将数据库中RFD用户与,JYZGCX用户的表导出

exp system/manager@ORACLE  file=d:\daochu.dmp owner=(RFD,JYZGCX)

3: 将数据库中的表T_USER,T_ROLE导出

  ystem为用户名,manager为密码,ORACLE为数据库实例名,其实不一定非的用system用户,只要是拥有管理员权限的用户都可以

exp JYZGCX/JYZGCX@Oracle file = d:\data\newsmgnt.dmp tables = (T_USER,T_ROLE) 

 

dmp文件的导入 

步骤如下: 

机器环境是windows7,其实也无所谓,命令行不都是样的么

1. 打开"开始" --->输入cmd,打开cmd命令窗口,输入: sqlplus/as sysdba; 然后使用conn / as sysdba;这样就可以以超级管理员的最高权限登录,当然这决定于init.ora文件中的数据库初始化参数.

2. 上面sysdba登录后,就可以创建表空间和用户了. 

  (打开"开始"-->输入cmd-->sqlplus/nolog; 输入conn/as sysdba 管理员账户登录;)

由于我们已经有dmp文件了,可以用notepad++ 打开dmp文件,进去按ctrl+f 去查找tablespace,可以找到这个dmp文件对应的表空间,然后根据表空间的信息去创建表空间,这样才能导入dmp文件.

  然后就是创建表空间,命令如下:

create tablespace USERS
logging
datefile \'D:\oracle\product\10.2.0\oradata\orcl\USERS.dnf\'
size 32m
autoxtend on
next 32m maxsize 2048m
extend management local;

 创建test用户,密码也是test222,使用上面创建的表空间

create user test identifiles by test222

default tablespace USERS

 给创建的test用户分配权限,为了方便可以直接分配dba权限

grant dba to test; 

 这样一来,我们前期的准备工作就完成了,然后就可以关掉刚刚的命令窗口了.

   打开"开始" ---->输入cmd(是cmd窗口不是sqlplus窗口)

由于上面的步骤中,创建了test用户,所以我们往test用户去导入数据

直接输入如下的语句:

 

imp test/test222@localhost/orcl file="C:\Users\xiejiachen\Desktop\test20190630.DMP" full =y;

 下面解释一下上面的语句:

  test是上面创建的登录数据库的用户名

  test222是上面的登录数据库的密码

  localhost: 代表你的数据库是本机还是远程导入,需要的可以随时替换ip地址

  orcl: 是实例的名称

  file: 后面是你的dmp的文件路径

  full=y :  全部导入

 

以上就是oracle数据库导出和导入dmp文件的两种方法.