11G数据库导入10G的操作实践

Oracle11g数据库导入Oracle10g数据库操作笔记

           用exp、imp命令时进行11g备份,导入10g的时候会抛错:不是有效的导出文件,头部验证失败;未成功终止导入。

        我今天就遇到了这种情况,搭建测试环境时,有一个项目使用的是11g数据库,而测试机是10g的数据库,按正常的思路走下来,报错:未成功终止导入,赶紧上网搜了一下,原来是版本不同的问题;

下面我把导入操作的全过程记录下来,自己做了一个知识的记录,同时也希望可以方便有需要的朋友!

一、在11g服务器上,使用expdp命令备份数据

EXPDP USERID='SYS/sys@daggis as sysdba' schemas=oa directory=DATA_PUMP_DIR dumpfile=dag.dmp logfile=dag.log version=10.2.0.1.0

(屏幕截图:C:\Documents and Settings\Administrator>expdp userid='system/sys@gis' schemas
 directory=data_pump_dir dumpfile=dag.dmp logfile=dag.log version=10.2.0.1.0)

其中,红色文字部分是根据需要改写的地方。例如我的sys密码是sys,数据库sid是daggis,要导出的用户名是oa,要导入到10.2.0.1.0版本的Oracle数据库中去。aa.dmp和aa.log将会在11g的dpdump目录中生成,例如我的11g装在了D盘下面,于是dag.dmp将会在D:/app/Administrator/admin/cuc/dpdump目录下被生成。

二、在10g服务器上,使用impdp命令恢复数据

步骤:1.建库2.建表空间3.建用户并授权4.将dag.dmp拷贝到10g的dpdump目录下5.impdp导入数据库

1、建库:是在database configuration assistant 中直接新建一个数据库(实例)。

2、建表空间:create tablespace OA datafile 'D:\oracle\product\10.2.0\oradata\orcl\oa.dbf' size 400m autoextend on next 20m online;

3、建用户:

create user oa identified by oa;

授权:

Alter user OA default tablespace OA quota unlimited on OA;
grant create session to oa;
grant connect to oa;
grant connect, resource, dba to oa;
grant create table to oa;
grant create view to oa;
grant create trigger to oa;
grant select any table to oa;
grant create sequence to oa;
grant create procedure to oa;
grant create role to oa;
grant create type to oa;
grant GRANT ANY PRIVILEGE to oa;

 

4、导入:首先测试机中10g装在了D:/根目录下,于是将dag.dmp文件copy到了D:\oracle\product\10.2.0\admin\daggis\udump目录下。

在导入之前,还有一个步骤,必须创建目录,然后才能进行导入,不然在导入时会报错:

ORA-39001: 参数值无效
ORA-39000: 转储文件说明错误
ORA-31640: 无法打开要读取的转储文件 "D:\p\dag.dmp"
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。

创建目录命令如下:

sqlplus sys/sys@daggis
sql>create directory dump_dir as 'C:\oracle\product\10.2.0\admin\daggis\udump';

IMPDP USERID='SYS/sys@daggis  as sysdba' schemas=oa  directory=DATA_PUMP_DIR dumpfile=dag.dmp logfile=dag.log version=10.2.0.1.0

(命令截屏:C:\Documents and Settings\Administrator>impdp userid='sys/sys@daggis as sysdba's
chemas=oa directory=data_pump_dir dumpfile=dag.dmp logfile=dag.log version=10.2.
0.1.0)

到这里为止,所有的操作都完成了,终于看到了久违的消息:操作完成!

上面的命令行中,红色与蓝色部分是根据需要大家根据实际情况改写的地方。例如我的sys密码是sys,数据库sid是daggis,要导入用户名为oa,要导入到10.2.0.1.0版本的Oracle数据库中去。dag.log将会在10g的dpdump目录中生成。

       最后有一个命令查看原对象用户总数,大家可以根据需要进行验证,在导出数据库的机器运行一次,在导入数据库后的机器运行一次,看看结果是否一样:

 sql>select count(*) from dba_objects where owner in ('wangou','sup','qishun');

呵呵,上面就是我操作的全部过程,如果大家有更好的办法完成,请记得共享哦!大家互相学习,一起进步!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/416039.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件测试个人心得总结

做测试有几年的时间了,很少这样了完整的来总结一些东西,最近有时间小小的总结了一下,针对公司有些项目提交测试时,存在的一些问题,谈谈个人的一些看法,比如没有需求,也没什么任何文档或有少量不…

【BZOJ1003】物流运输

1003: [ZJOI2006]物流运输 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 8273 Solved: 3481[Submit][Status][Discuss]Description 物流公司要把一批货物从码头A运到码头B。由于货物量比较大,需要n天才能运完。货物运输过程中一般要转停好几个码头。物流公司通…

mongoose日期 时间 范围查询

需要知道的两个修饰符 $gte和$lt $gte (greater-than)$lt (less-than) 写法如下 const start new Date(2018, 3, 1); const end new Date(2018, 4, 1); db.posts.find({created_on: {$gte: start, $lt: end}});

Oracle rman备份和还原恢复数据库

1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)  SQL> conn / as sysdba (以DBA身份连接数据库)  SQL> shutdown immediate; (立即关闭数据库&a…

JavaScript 随意整理2

08.29 # 全局对象* escape/unescape() 对特殊字符编码/解码* encodeURI / decodeURL 对url进行编码/解码* encodeURIComponent / decodeURIComponent 对URL解码/解码* eval() 把字符串当做代码执行# JSON对象* parse() 把josn字符串转换为对象* stringify() 把对…

css scale 缩放基准点

使用transform-origin来进行控制 在使用transform方法进行文字或图像的变形时,是以元素的中心点为基准点进行的。使用transform-origin属性,可以改变变形的基准点。 用法:transform-origin: 10px 10px; 共两个参数,表示相对左上角…

闪回区设置问题

oracle10g提供了一个叫做闪回恢复区(Flashback recovery area)的新特性,可以将所有恢复相关的文件,比如flashback log,archive log,backup set等,放到这个区域集中管理。 查看闪回区内容及使用情况: select * from v$flash_recov…

多主机Docker容器的VLAN划分

原文发表于cu:2016-06-06 参考文档: Docker网络的4种模式,pipework/ovs的简单使用等:http://www.infoq.com/cn/articles/docker-network-and-pipework-open-source-explanation-practice Dockerpool全文档:https://yea…

css p 文本不换行,超出文字显示省略号

.text {// 文本强制不换行white-space: nowrap;// 文本溢出显示省略号text-overflow: ellipsis;// 溢出的部分隐藏overflow: hidden; }

oracle监听无法启动常用解决办法

在cmd下使用lsnrctl start无法启动监听程序提示:TNS-12560: TNS: 协议适配器错误在cmd下进入lsnrctl,输入start提示:TNS-12557: Message 12557 not found; No message file for productNETWORK, facilityTNSns secondary err code: 12560请检…

mongodb 高级查询 统计记录条数

使用count()方法查询表中的记录条数,例如,下面的命令查询表users的记录数量: db.users.find().count();

SQL语句优化

【数据库优化的目的】 1.避免出现页面访问错误 由于数据库连接timeout产生页面5XX错误。 由于慢查询造成页面无法加载。 由于阻塞造成数据无法提交。 2.增加数据库的稳定性 很多数据库问题都是由于低效的查询引起的。 3.优化用户体验 流畅的访问速度。 良好的网站功能体验。 【…

ORA-27101 shared memory realm does not exist 错误处理

ORA-27101 错误处理 racle Database的主机被异常关机,重新启动电脑,Database报ORA-27101 shared memory realm does not exist 错误.可能是windows的oracle service 损坏,可以重建service试试是否可以修复。删除Service&#xff1…

js 获取 当天凌晨时间

需要进行时间比较的时候,一般会遇到从凌晨开始算 new Date(new Date().setHours(0, 0, 0, 0))

移动数据文件、控制文件、日志文件

1. ALTER DATABASE方法;-- 此方法要求关闭数据库-- 用此方法,可以移动任何表空间的数据文件。STEP 1. 下数据库:$ sqlplus /nologSQL> CONNECT INTERNAL;SQL> SHUTDOWN;SQL> EXIT;STEP 2.用操作系统命令移动数据文件:-- …