紧接上篇文章,Oracle数据库架构已经创建完成,我的需求是:将老服务器上的数据库迁移到新的数据库上。

这就用到impdp(导入)操作。

要想实现对新数据库的impdp(导入)工作,

首先需要从老的数据库上做expdp(导出)操作,命令如下:

expdp 用户名/密码 schemas=iirspublish dumpfile=导出数据库名.dmp DIRECTORY=目录名 logfile=导出日志.log

备注:schemas,你用“用户 user”来理解就很容易了,每个模式(user)下可以有一套互不干扰的对象。

你如果想要访问其他模式的对象,需要指定schema的name,实际就是指定username。

下面这些步骤是我在实际工作中实践过的,

准备工作:首先用Xshell连接到Linux服务器,并切换至oracle账号,

[root@localhost ~]# su - oracle

Last login: Fri Jul 21 13:49:22 CST 2017 on pts/1    (成功切换)

[oracle@localhost ~]$ sqlplus sys/ as sysdba

切换到

SQL>

然后依次执行如下命令:

1、sys用户登录创建目录

SQL>create directory dir_iirsuserbaknew as '/u01/app/oracle/oradata'; (创建目录并分配存放路径)

2、sys用户下创建表空间

SQL>create tablespace IIRSUSER datafile '/u01/app/oracle/oradata/IIRSUSER01' size 100m Autoextend on next 100m,'/u01/app/oracle/oradata/IIRSUSER02' size 100m Autoextend on next 100m Extent management local uniform size 200k;(创建表空间,设置文件自动增长空间大小)

3、sys用户下创建用户

SQL>create user iirsuser identified by "iirsuser" Default tablespace IIRSUSER Temporary tablespace temp; (创建用户名,设置密码,并指明默认表空间和临时表空间)

SQL>grant dba,connect,resource to iirsuser; (给用户授予dba、基础、开发权限)

4、sys用户下

SQL>Grant read,write on directory dir_iirsuserbaknew to iirsuser;  (将目录的读写权限授予用户)

5、DOS下Impdp还原

[oracle@localhost ~]$impdp iirsuser/"iirsuser"@orcl directory=dir_iirsuserbaknew dumpfile=ExpIirspublish20170814.dmp remap_tablespace=IIRSPublish:IIRSUSER remap_schema=iirspublish:iirsuser logfile=impdbiirspublish20170814.log transform=oid:n

第5步需要退出(exit)SQL命令行至Oracle账号下执行。

需要解释的是:

impdp 用户名/"密码"@sid directory=目录 dumpfile=老数据库expdp得到的实例名.dmp remap_tablespace=老数据库空间名:新数据库空间名 remap_schema=老数据库用户名:新数据库用户名 logfile=impdb日志名.log transform=该参数可以去掉,应用于适用对象的元数据转换

需要强调的是:

问题1:如果你在操作的过程中忘记了自己建的目录,可以用命令(select * from dba_directories;)查询;

问题2:如果想删除新还原好的数据库实例,那么需要执行以下操作

1)、首先删除用户

-----drop USER c#iirsuser CASCADE;

2)、其次删除表空间包括表空间的内容和数据文件

-----drop tablespace IIRSUSER including contents and datafiles cascade constraints;

3)、最后删除目录

-----drop directory dir_iirsuserbaknew;

Linux服务器下对Oracle数据库expdp(导出)和impdp(导入)的更多相关文章

  1. Linux服务器下对Oracle作Rman备份

    由于工作需要,最近要对几台Linux系统下的Oracle数据库进行Rman备份,就在操作的同时,整理了一下,方便今后作为资料进行查阅. ------------------------Linux服务器 ...

  2. Linux服务器中创建Oracle数据库实例

    紧接上篇,在Linux服务器已经完成对Oracle数据库软件的安装后,接下来要创建Oracle实例,看图说话: [su – oracle echo $DISPLAY export DISPLAY=10 ...

  3. linux服务器上修改oracle数据库的字符集

    linux服务器上以dba身份进入:sqlplus / as sysdba; 依次执行以下命令:shutdown immediate; startup mount; alter system enab ...

  4. linux 环境下备份oracle 数据库

    登陆linux后,进入oracle的安装目录下,找到bin那个目录,进入bin目录ls -l 看这些命令的所有者: su - oracle这时会进入这个用户的主目录/home/oracle,此时,可以 ...

  5. linux下的oracle数据库和表空间的导入导出

    由于oracle是安装在linux上面,因此需要oracle的导入导出都是使用命令进行操作.oracle允许整个数据库导入导出和表空间的导入导出. 数据库导入导出 以下操作是在操作系统控制台命令中执行 ...

  6. linux环境下安装oracle数据库 原文在卡卡100http://www.cnblogs.com/kaka100

    centos55_oracle11gr2_install   第一个阶段:安装centos55 a:安装centos5.5   用图形界面安装  硬盘 16G 注意:用图形界面安装.. 第二个阶段:配 ...

  7. 在linux环境下重启oracle数据库,解决密码过期的问题

    (1) 以oracle身份登录数据库,命令:su – oracle (2) 进入Sqlplus控制台,命令:sqlplus /nolog (3) 以系统管理员登录,命令:connect /as sys ...

  8. 【ORACLE语句备份】数据库表同步 ——定时任务管理器(EXPDP导出,IMPDP导入)

    1.C:\Users\Administrator>sqlplus sys/xxx@xxx as sysdba; 2.SQL> create directory dbbak4 as 'e:\ ...

  9. oracle数据库cmd导出数据和导入数据

    一:前言 每次我自己来导出oracle数据的数据进行备份的时候都是要看一遍记载的语句,还别说自己敲多了,也熟练了,但是还是不是很放心,所以就记载下来吧. 二:内容 (1).最简单,最直接的导入方式(这 ...

随机推荐

  1. css布局方面小结

    1 ####css选择器 1 .left-word.moreinfor{} 这样是找不到选择器的.中间需要一个空格 但是div.moreinfor 是可以的. 2 max-width的作用: p元素只 ...

  2. Linux内存管理(深入理解Linux内核)

    Linux的内存管理,实际上是借助80x86的硬件分段和分页电路,将逻辑地址转化为物理地址的. 物理内存中,有一部分是一直(Permanently)映射给内核使用的,这部分主要用于保存内核的代码,以及 ...

  3. HXY烧情侣

    题目描述 众所周知,HXY已经加入了FFF团.现在她要开始喜(sang)闻(xin)乐(bing)见(kuang)地烧情侣了.这里有n座电影院,n对情侣分别在每座电影院里,然后电影院里都有汽油,但是要 ...

  4. 一键抓取Android的Locat Log

    很多小伙伴在做App测试时,一遇到Cash,开发同学最常说的一句话,就是抓下Locat日志,很多小伙伴一听到这个抓取日志就会觉得有点烦. ​主要有2点: ​    ​    ​1.是这个bug可能不好 ...

  5. python--面向对象:多态与封装

    一.多态 :python 天生支持多态多态指的是一类事物有多种形态 eg:文件有多种形态:文本文件,可执行文件鸭子类型:python中崇尚鸭子类型,不崇尚根据继承所得来的相似 优点 : 松耦合 每个相 ...

  6. 2019-10-10-dotnet-新-sdk-style-项目格式的一些命名空间和引用

    title author date CreateTime categories dotnet 新 sdk style 项目格式的一些命名空间和引用 lindexi 2019-10-10 10:6:46 ...

  7. Spring 在Web中的应用

    Spring 在Web中的应用 在web项目开发中,不会直接实例化ApplicationContext对象,如果想用到ApplicationContext,一般的步骤: 配置一个监听器ContextL ...

  8. *** stack smashing detected ***: ./server terminated

    该类错误是修改了返回指针,一般是由于 1. 数组越界赋值.(数组没有边界检查)int a[8]; a[8],a[9],a[-1]..都能正常编译,连接,运行时可能出错. 2.使用 strcpy等不安全 ...

  9. selenium提取不了标签文本

    1.举个例子:selenium使用driver.find_element_by_xpath().text 提取不到标签文本?? 如果我们提取的元素文本为空时,而不是我们想要的文本时,这时可能就是因为你 ...

  10. 32. Random类

    1.Random class Random implements java.io.Serializable 下面是一个简单验证码的代码: public static void main(String[ ...