Oracle 8i迁移到10g出现的问题及解决

2016-02-19 14:50 17 1 收藏

下面是个超简单的Oracle 8i迁移到10g出现的问题及解决教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

【 tulaoshi.com - 编程语言 】

  近日,为了适应新的形式,响应ORACLE 公司号召,体验ORACLE 公司的新产品的功能,决定对其中一个数据库由8i 迁移到10g ,但作业过程中,出现了一些问题,现在给大家共享一下

  迁移对象:

SUN SOLARIS8  ORACLE8.1.7.4     NLS_CHARACTERSET ZHS16GBK

  接受对象:

IBM AIX 5.2  ORACLE10.1.0.5     NLS_CHARACTERSET ZHS16GBK

  操作方法:

  采用按USER EXPORT /IMPORT 的方法。

  问题:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)
- import 的时候,XXX USER IMPORT 出现如下错误。  IMP-00017: following statement failed with ORACLE error 1:  "BEGIN dbms_job.isubmit(job=1,what='esupport.P_TM_close2;',next_date=to"  "_date('4000-01-01:00:00:00','YYYY-MM-DD:HH24:MI:SS'),interval='sysdate +(1"  "/24)',no_parse=true); END;"  IMP-00003: ORACLE error 1 encountered  ORA-00001: unique constraint (SYS.I_JOB_JOB) violated  ORA-06512: at "SYS.DBMS_JOB", line 97  ORA-06512: at line 1  About to enable constraints...     Import terminated successfully with warnings.

  解决方法:

- 检查源DB(8i)的JOB ,发现XXX用户占JOB ID 位置为1select job,log_user,what from dba_jobs;JOB LOG_USER WHAT1 XXXX esupport.P_TM_close2;- 检查接受DB(10G)的JOB ,发现SYSMAN占用了JOB ID为1(这个还没弄清楚,只有10G这样呢,还是其他版本也这样呢?)select job,log_user,what from dba_jobs;JOB LOG_USER WHAT   1 SYSMAN EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS();

  发现JOB ID 1 已经没系统自己占用。所以报如上的错误。

  - 手动把哪个JOB 加进去(也可以用提前把此JOB 删掉的方法,请参照METALINK:336206.995)

BEGIN  dbms_job.isubmit(job=23,  what='esupport.P_TM_close2;',  next_date=to_date('4000-01-01:00:00:00','YYYY-MM-DD:HH24:MI:SS'),  interval='sysdate +(1/24)',no_parse=true);  END;  begin  dbms_job.remove(23);     end;

  到此问题得到解决,下面就是做一些检查了,DB LINK/TNSNAME 修改/JOB 以及MQ 的修改了

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

来源:http://www.tulaoshi.com/n/20160219/1608089.html

延伸阅读
一、问题描述 SQL Plus WorkSheet是一个窗口图形界面的SQL语句编辑器,对于那些喜欢窗口界面而不喜欢字符界面的用户,该工具相对SQL/PLUS受到了很大的欢迎。但从Oracle 8i以后,如果安装Oracle 8i时选取的是别于英语的字符集,对于我们中国,通常会选取简体中文字符集(ZHS16GBK),安装成功后,运行SQL Plus WorkSheet程序,会出现所...
我在安装ORACLE 10g过程中遇到了两个主要问题:如何彻底删除旧版本和如何配制MS Loopback Adapter。现把解决办法贴出来,供大家参考。 一,如何彻底删除旧版本的oracle 1,在cmd里运行DBCA,在这里删除oracle实例,有多少删多少; 2,在开始程序中找到oracle子目录下的Universal Installer,运行以卸载oracle软件; 3...
在Oracle 10G中,引入了一个回收站(Recycle Bin)的概念. 回收站,从原理上来说就是一个数据字典表,放置用户Drop掉的数据库对象信息.用户进行Drop操作的对象并没有被数据库删除,仍然会占用空间.除非是由于用户手工进行Purge或者因为存储空间不够而被数据库清掉.数据库有了这样的功能,能够减少很多不必要的麻烦.常常看到开发人员误...
错误做法: 为了将oracle 9i数据库里的数据移植到低版本的oracle 8i中,首先在oracle 9i中用exp命令导出(命令行): exp 用户名/密码@全局SID file=导出数据库文件名 owner=用户 将导出数据库文件名copy至oracle 9i计算机上,在oracle 8i中用imp命令导入(命令行): imp 用户名/密码@全局SID file=欲倒入的数据库文...
Oracle LogMiner 是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻松获得Oracle 重作日志文件(归档日志文件)中的具体内容,特别是,该工具可以分析出所有对于数据库操作的DML(insert、update、delete等)语句,另外还可分析得到一些必要的回滚SQL语句。该工具特别适用于调试、审计或者回退某个特定的事务。...

经验教程

527

收藏

7
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部