最近工作上有一个任务要修改一个比较老的项目,分公司这边没有这个项目数据库相关的备份,所以需要从正式环境上面导出数据库备份出来在本地进行部署安装,之前在其它项目的时候也弄过这个数据库的部署和安装,也写了一个操作文档,但是写的不是那么的详细,很多场景都没有考虑到,后面想了想还是重新写一个操作文档方便下次数据库相关导出的操作,也同时能够帮助其它初次接触的同事快速操作。

项目的采用的开发相关是:Vs2008,Oracle 11g,PLSQL。

第一步,数据库的导出

a.数据库用户导出

1.查询所有数据库用户

 SELECT wm_concat(T.username)
FROM DBA_USERS T
WHERE T.account_status = 'OPEN'
AND T.default_tablespace NOT IN ('SYSTEM', 'SYSAUX')
AND T.username NOT IN ('SCOTT','EMULATION')

2.导出创建表空间及数据文件脚本

 SELECT 'CREATE TABLESPACE ' || T.TABLESPACE_NAME ||
' DATAFILE ''E:\ORADATA\FSDB\' || T.TABLESPACE_NAME || '01.DBF'' size 100M autoextend on;'
FROM DBA_TABLESPACES T
WHERE T.TABLESPACE_NAME NOT IN
('SYSTEM', 'SYSAUX', 'UNDOTBS1', 'TEMP', 'USERS', 'UNDOTBS2');

E:\ORADATA\FSDB\  本地数据库文件存储目录

会查询出类似以下脚本

CREATE TABLESPACE TBS_TYUM_SMS DATAFILE 'E:\ORADATA\FSDB\TBS_TYUM_SMS01.DBF' size 100M autoextend on;

TBS_TYUM_SMS   表空间名称

E:\ORADATA\FSDB\TBS_TYUM_SMS01.DBF   创建的空间表DBF文件

3.创建导出文件相关操作

一、创建导出文件存放的文件目录(该目录必须存在),该命令不会在操作系统创建真正的目录,最好以system等管理员创建。

create or replace directory DPDATAGGDB as 'E:\backup\xxxx';

二、查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)

select * from dba_directories;

三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。

grant read,write on directory DPDATAGGDBto scott;

4.按用户导出

-按用户导出

Expdp system/123456@XXDB schemas=xxxx dumpfile=XXDB20170307BAK.DMP directory=DPDATAGGDB  logfile=XXDB20170307BAK.log

-exp全部导出

exp system/123456@XXDB  file=E:\backup\xxxx\QZDB20170220_bak.dmp full=y

system/123456   登录dba账号密码

XXDB      需要导出的数据库名称

schemas    用户集合

dumpfile=XXDB20170307BAK.DMP   导出的数据dmp文件

directory=DPDATAGGDB   第三部创建的文件目录  这里导出的文件会在该目录下面生成对应文件

logfile=XXDB20170307BAK.log      导出的数据log文件

第二步,数据库导入

1.01打开oracle Databese配置工具

1.02进入欢迎页面

1.03选择创建数据库,如果需要修改可以选择配置数据库选件

1.04数据库模板

1.05填写数据库连接表示

1.06管理选项,可直接下一步

1.07填写数据库登录信息,为了管理方便选择所要账号使用同一管理口令

1.08设置数据文件存放位置,可选择默认位置,也可自己设置存放位置

1.09设置恢复配置,可选择默认数据

1.10数据库内容,可跳过

1.11初始化参数,主要分配内存空间,需要考虑当前服务器上面可用空间,多个数据库需要平均处理,后面的调整大写,字符集,链接模式可以选择默认选项

1.12数据库存储

1.13创建选项

1.14点击完成就会生成数据库了

2.打开PLSQ或者TOAD用sys  DBA身份登录创建第一步第二个操作导出

CREATE TABLESPACE TBS_TYUM_SMS DATAFILE 'E:\ORADATA\FSDB\TBS_TYUM_SMS01.DBF' size 100M autoextend on;

.....这里应该导出多个空间的创建语句

3.创建用于导入导出的文件目录

create or replace directory TY_DUMP_DIR as 'E:\app '

E:\app 必需是已经存在的目录。

查看已经存在的目录

select * from dba_directories

删除文件目录记录

DROP DIRECTORY TY_DUMP_DIR

用sys用户登录给要访问的用户指定访问目录的权限。

grant read,write on directory TY_DUMP_DIR to scott;

4.导入数据

Impdp SYSTEM/123456@XXDB directory=TY_DUMP_DIR dumpfile=XXDB20170307BAK.DMP  LOGFILE=XXDB20170307BAK.LOG full=y

impdp system/123456@XXDB schemas=xxxx dumpfile=XXDB20170307BAK.DMP directory=DPDATAGGDB logfile=XXDB20170307BAK.log

或者

imp system/123456@XXDB  file=d:\bak.dmp full=y ignore=y

这里的相关关键词不一一解释了,可以参照导出文件说明

如果是EXpdp 导出的则需要用Impdp 导出    EXP则需要用imp  不然会在导出的时候报错

这里所有的导入导出操作都要在cmd命令符操作下进行  window+R   cmd

其实在导入导出的过程中应该还会遇到其他的一些问题,这里因为之前在操作的时候没有记录了,以后如果碰到了问题,我会在这里一一记录,也希望这篇文章能够给需要的人带来帮助。如果有什么写错的地方也希望大家能够指出来。谢谢!

微信链接:链接

如果有感兴趣的可以关注一下。

分享一次Oracle数据导入导出经历的更多相关文章

  1. oracle数据导入/导出

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份.   大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据 ...

  2. Oracle数据导入导出

    Oracle数据导入导出imp/exp 在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与ora ...

  3. Oracle数据导入导出imp/exp

    功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失). Oracle有个好处,虽然你的电 ...

  4. Oracle数据导入导出imp/exp sp2-0734:未知的命令开头'imp...解决方法

    Oracle数据导入导出imp/exp sp2-0734:未知的命令开头'imp...解决方法   sp2-0734:未知的命令开头'imp 忽略了剩余行默认分类   www.2cto.com  应该 ...

  5. Oracle数据导入导出imp/exp(转)

    在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 一.Oracle ...

  6. Oracle 数据导入导出操作 (转)

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢 ...

  7. Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令

    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利 ...

  8. Oracle数据导入导出命令

    IMP 和EXP命令 Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处 ...

  9. oracle数据导入/导出(2)

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢 ...

随机推荐

  1. 1.WF 4.5在项目中直接使用的问题

    最近公司需要在互联网产品后台进行精细化流程管理,开发了一个基于WF 4.5框架的流程引擎与图形化设计器,让流程真正的跑了起来. 基于Visual Studio 直接设计流程主要面临以下的问题: 1.需 ...

  2. 关于Cookie安全性设置的那些事

    一.标题:关于Cookie安全性设置的那些事 副标:httponly属性和secure属性解析 二.引言 经常有看到XSS跨站脚本攻击窃取cookie案例,修复方案是有httponly.今天写出来倒腾 ...

  3. Nginx教程(三) Nginx日志管理

    Nginx教程(三) Nginx日志管理 1 日志管理 1.1 Nginx日志描述 通过访问日志,你可以得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某 ...

  4. 9.Java 加解密技术系列之 RSA

    Java 加解密技术系列之 RSA 序 概念 工作流程 RSA 代码实现 加解密结果 结束语 序 距 离上一次写博客感觉已经很长时间了,先吐槽一下,这个月以来,公司一直在加班,又是发版.上线,又是新项 ...

  5. 图的M着色问题

    问题描述: 给定无向连通图 G 和 m 种不同的颜色.用这些颜色为图 G 和各顶点着色,每个顶点着一种颜色.是否有一种着色法使得图 G 中每条边的两个顶点着不同的颜色.这个问题是图的 m 可着色判定问 ...

  6. 分布式锁2 Java非常用技术方案探讨之ZooKeeper

    前言:       由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题.以自己结合实际工作中的一些经验和网上看到的一些资料 ...

  7. 初入计算机图形学(二):对bidirectional path tracing的一些困惑

    本人水平有限,若有错误也请指正~ 前文提及了光线追踪的一些常用手法,但是其中path tracing的实现最为简单,但是其最致命的一个缺点就是图像收敛速度很慢..原因在于从摄影机发射出的每一条光线若不 ...

  8. Java之反射--练习

    定义Student 类:包含:姓名和年龄等属性,有参和无参构造方法,输出所有信息的方法 1.使用多种方法生成一个Student类的Class对象 2.使用Class类获取Student类的结构信息并输 ...

  9. Java IO流--练习2

    1)写一个Java程序,输入3个整数,并求出三个数的最大数和最小数 代码: package 第十二章IO流; import java.io.BufferedReader; import java.io ...

  10. c++ const char *[] or char [][]

    ]={"hello","world"}; ]={"hello"};char (*ch3)[6]= ch1; std::cout<< ...