Oracle11.2.0.3数据库升级到Oracle11.2.0.4通过rman加追归档方式

分类: oracle |
1.准备归档环境:
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 11.2.0.3.0 Production on 星期四 3月 24 10:27:49 2016
Copyright
(c) 1982, 2011, Oracle.
SQL> conn /as sysdba
已连接。
SQL> archive log list;
数据库日志模式
自动存档
存档终点
最早的联机日志序列
当前日志序列
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 2555445248 bytes
Fixed
Size
Variable
Size
Database
Buffers
Redo
Buffers
数据库装载完毕。
SQL> alter database archivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 2555445248 bytes
Fixed
Size
Variable
Size
Database
Buffers
Redo
Buffers
数据库装载完毕。
数据库已经打开。
SQL>
2.备份数据库:
C:\Users\Administrator>rman target /
恢复管理器: Release 11.2.0.3.0 - Production on 星期四 3月 24 10:30:39 2016
Copyright
(c) 1982, 2011, Oracle and/or its affiliates.
已连接到目标数据库: JYC (DBID=4062189341)
RMAN> backup database;
启动 backup 于 24-3月 -16
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=68 设备类型=DISK
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\ORACLE\ORADATA\JYC\USERS01.DBF
输入数据文件: 文件号=00001 名称=D:\ORACLE\ORADATA\JYC\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\ORACLE\ORADATA\JYC\SYSAUX01.DBF
输入数据文件: 文件号=00005 名称=E:\OGG\ORADATA\OGG01.DBF
输入数据文件: 文件号=00003 名称=D:\ORACLE\ORADATA\JYC\UNDOTBS01.DBF
输入数据文件: 文件号=00007 名称=D:\ORACLE\ORADATA\JYC\T2.DBF
输入数据文件: 文件号=00008 名称=D:\ORACLE\ORADATA\JYC\T3.DBF
通道 ORA_DISK_1: 正在启动段 1 于 24-3月 -16
通道 ORA_DISK_1: 已完成段 1 于 24-3月 -16
段句柄=D:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\03R19AR0_1_1 标记=TAG20160324T103055 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:15
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 24-3月 -16
通道 ORA_DISK_1: 已完成段 1 于 24-3月 -16
段句柄=D:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\04R19ATB_1_1 标记=TAG20160324T103055 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 24-3月 -16
--进入E:\ogg\archive,手动删除过期的归档文件
RMAN> crosscheck archivelog all;
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=68 设备类型=DISK
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000312_0789752925.0001 RECID=1 STAMP=898610336
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000313_0789752925.0001 RECID=2 STAMP=898775931
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000314_0789752925.0001 RECID=3 STAMP=898781023
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000315_0789752925.0001 RECID=4 STAMP=898782955
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000316_0789752925.0001 RECID=5 STAMP=898783000
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000317_0789752925.0001 RECID=6 STAMP=898783055
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000318_0789752925.0001 RECID=7 STAMP=898783124
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000319_0789752925.0001 RECID=8 STAMP=898783202
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000320_0789752925.0001 RECID=9 STAMP=898783383
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000321_0789752925.0001 RECID=10 STAMP=898783619
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000322_0789752925.0001 RECID=11 STAMP=898783740
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000323_0789752925.0001 RECID=12 STAMP=898784610
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000324_0789752925.0001 RECID=13 STAMP=898784697
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000325_0789752925.0001 RECID=14 STAMP=898784758
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000326_0789752925.0001 RECID=15 STAMP=898786204
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000327_0789752925.0001 RECID=16 STAMP=898786297
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000328_0789752925.0001 RECID=17 STAMP=898786432
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000329_0789752925.0001 RECID=18 STAMP=898786516
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000330_0789752925.0001 RECID=19 STAMP=898786603
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000331_0789752925.0001 RECID=20 STAMP=898787508
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000332_0789752925.0001 RECID=21 STAMP=898787573
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000333_0789752925.0001 RECID=22 STAMP=898787673
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000334_0789752925.0001 RECID=23 STAMP=898787730
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000335_0789752925.0001 RECID=24 STAMP=898787796
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000336_0789752925.0001 RECID=25 STAMP=898788111
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000337_0789752925.0001 RECID=26 STAMP=898788213
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000338_0789752925.0001 RECID=27 STAMP=898788318
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000339_0789752925.0001 RECID=28 STAMP=898788394
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000340_0789752925.0001 RECID=29 STAMP=898788547
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000341_0789752925.0001 RECID=30 STAMP=898788970
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000342_0789752925.0001 RECID=31 STAMP=898789048
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000343_0789752925.0001 RECID=32 STAMP=898789117
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000344_0789752925.0001 RECID=33 STAMP=898789192
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000345_0789752925.0001 RECID=34 STAMP=898789258
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000346_0789752925.0001 RECID=35 STAMP=898790213
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000347_0789752925.0001 RECID=36 STAMP=898790324
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000348_0789752925.0001 RECID=37 STAMP=898790390
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000349_0789752925.0001 RECID=38 STAMP=898790801
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000350_0789752925.0001 RECID=39 STAMP=898790864
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000351_0789752925.0001 RECID=40 STAMP=898791312
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000352_0789752925.0001 RECID=41 STAMP=898791399
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000353_0789752925.0001 RECID=42 STAMP=898791459
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000354_0789752925.0001 RECID=43 STAMP=898791783
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000355_0789752925.0001 RECID=44 STAMP=898791928
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000356_0789752925.0001 RECID=45 STAMP=898791979
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000357_0789752925.0001 RECID=46 STAMP=898812394
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000358_0789752925.0001 RECID=47 STAMP=898812451
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000359_0789752925.0001 RECID=48 STAMP=898812523
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000360_0789752925.0001 RECID=49 STAMP=898812577
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000361_0789752925.0001 RECID=50 STAMP=898812643
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000362_0789752925.0001 RECID=51 STAMP=898812722
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000363_0789752925.0001 RECID=52 STAMP=898812930
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000364_0789752925.0001 RECID=53 STAMP=898813112
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000365_0789752925.0001 RECID=54 STAMP=898813184
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000366_0789752925.0001 RECID=55 STAMP=898813275
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000367_0789752925.0001 RECID=56 STAMP=899024232
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000368_0789752925.0001 RECID=57 STAMP=899024490
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000369_0789752925.0001 RECID=58 STAMP=899024541
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000370_0789752925.0001 RECID=59 STAMP=899024599
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000371_0789752925.0001 RECID=60 STAMP=899029552
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000372_0789752925.0001 RECID=61 STAMP=899029643
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000373_0789752925.0001 RECID=62 STAMP=899030141
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000374_0789752925.0001 RECID=63 STAMP=899030183
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000375_0789752925.0001 RECID=64 STAMP=899030492
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000376_0789752925.0001 RECID=65 STAMP=899030541
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000377_0789752925.0001 RECID=66 STAMP=899030598
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000378_0789752925.0001 RECID=67 STAMP=899030759
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000379_0789752925.0001 RECID=68 STAMP=899126602
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000380_0789752925.0001 RECID=69 STAMP=899128328
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000381_0789752925.0001 RECID=70 STAMP=899130232
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000382_0789752925.0001 RECID=71 STAMP=899130526
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000383_0789752925.0001 RECID=72 STAMP=900434472
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000384_0789752925.0001 RECID=73 STAMP=900434920
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000385_0789752925.0001 RECID=74 STAMP=900492963
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000386_0789752925.0001 RECID=75 STAMP=900587314
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000387_0789752925.0001 RECID=76 STAMP=900845956
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000388_0789752925.0001 RECID=77 STAMP=900935578
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000389_0789752925.0001 RECID=78 STAMP=902333418
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000390_0789752925.0001 RECID=79 STAMP=902335220
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000391_0789752925.0001 RECID=80 STAMP=903994707
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000392_0789752925.0001 RECID=81 STAMP=904040535
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000393_0789752925.0001 RECID=82 STAMP=904581590
对归档日志的验证失败
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000394_0789752925.0001 RECID=83 STAMP=905092424
对归档日志的验证成功
归档日志文件名=E:\OGG\ARCHIVE\ARC0000000398_0789752925.0001 RECID=84 STAMP=907324371
已交叉检验的 84 对象
RMAN> backup archivelog all;
启动 backup 于 24-3月 -16
当前日志已存档
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动归档日志备份集
通道 ORA_DISK_1: 正在指定备份集内的归档日志
输入归档日志线程=1 序列=398 RECID=84 STAMP=907324371
输入归档日志线程=1 序列=399 RECID=85 STAMP=907324451
通道 ORA_DISK_1: 正在启动段 1 于 24-3月 -16
通道 ORA_DISK_1: 已完成段 1 于 24-3月 -16
段句柄=D:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\06R19B13_1_1 标记=TAG20160324T103411 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 24-3月 -16
RMAN>
3.对数据库做ddl等操作,使数据发生变更。
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 11.2.0.3.0 Production on 星期四 3月 24 10:36:00 2016
Copyright
(c) 1982, 2011, Oracle.
SQL> conn /as sysdba
已连接。
SQL> set line 132
SQL> set wrap off
SQL> archive log list;
数据库日志模式
自动存档
存档终点
最早的联机日志序列
下一个存档日志序列
当前日志序列
SQL> select * from v$log;
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------------- ------------ ---
SQL> select * from v$Logfile;
行将被截断
---------- ------- ------- ---------------------------------------------------------------------------------------------------------
SQL> conn jyc/jyc
已连接。
SQL> create table j as select * from user_tables;
create table j as select * from user_tables
第 1 行出现错误:
ORA-00955: 名称已由现有对象使用
SQL> create table j1 as select * from user_tables;
create table j1 as select * from user_tables
第 1 行出现错误:
ORA-00955: 名称已由现有对象使用
SQL> create table j2 as select * from user_tables;
表已创建。
SQL> conn /as sysdba
已连接。
SQL> alter system switch logfile;
系统已更改。
SQL> /
系统已更改。
SQL> /
系统已更改。
SQL> alter system checkpoint;
系统已更改。
SQL> select * from v$log;
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------------- ------------ ---
SQL> conn jyc/jyc
已连接。
SQL> create table j3 as select * from user_tables;
表已创建。
SQL> conn /as sysdba
已连接。
SQL> alter system switch logfile;
系统已更改。
SQL> alter system checkpoint;
系统已更改。
SQL> select * from v$log;
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------------- ------------ ---
SQL>
SQL> alter system switch logfile;
系统已更改。
SQL> alter system checkpoint;
系统已更改。
SQL> select * from v$log;
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------------- ------------ ---
SQL>
4.拷贝备份集和归档到目标库。
5.恢复备份集到11.2.0.4
Rman target /
RMAN>下如下操作:
restore controlfile from 'F:\archive\DATABASE\04R19ATB_1_1';
alter database mount;
catalog start with 'F:\archive';
run
{
set newname for datafile 1 to 'F:\app\oracle\oradata\jyc\SYSTEM01.DBF';
set newname for datafile 2 to 'F:\app\oracle\oradata\jyc\SYSAUX01.DBF';
set newname for datafile 3 to 'F:\app\oracle\oradata\jyc\UNDOTBS01.DBF';
set newname for datafile 4 to 'F:\app\oracle\oradata\jyc\USERS01.DBF';
set newname for datafile 5 to 'F:\app\oracle\oradata\jyc\OGG01.DBF';
set newname for datafile 7 to 'F:\app\oracle\oradata\jyc\T2.DBF';
set newname for datafile 8 to 'F:\app\oracle\oradata\jyc\T3.DBF';
restore database;
switch datafile all;
recover database until sequence 405;
}
Exit
提示:
执行recover database until sequence 405;表示应用404的归档日志文件,保证数据全部应用,不丢失数据。
进入sqlplus
Conn /as sysdba
alter database rename file 'D:\ORACLE\ORADATA\JYC\REDO01.LOG' to 'F:\app\oracle\oradata\jyc\REDO01.LOG';
alter database rename file 'D:\ORACLE\ORADATA\JYC\REDO02.LOG' to 'F:\app\oracle\oradata\jyc\REDO02.LOG';
alter database rename file 'D:\ORACLE\ORADATA\JYC\REDO03.LOG' to 'F:\app\oracle\oradata\jyc\REDO03.LOG';
---不做该步骤,直接open resetlogs会报ora-00600错误
删除临时表空间:
SQL> alter database tempfile 'D:\ORACLE\ORADATA\JYC\TEMP01.DBF' drop;
增加临时表空间文件:
ALTER
SIZE 100M;
ORA-00600: [kcrfcl_1], [2048],[512]
然后SQL>alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-39700: database must be opened with UPGRADE option
Process ID: 6773
Session ID: 19 Serial number: 25
需重新conn /as sysdba
SQL> Startup mount
SQL> alter database open resetlogs upgrade;
报错ORA-01139: RESETLOGS option only valid after an incomplete database recovery
执行alter database open upgrade;解决。
6.更新数据字典
SQL> Conn /as sysdba
SQL> @?/rdbms/admin/catupgrd.sql
SQL> shutdown immediate
SQL>
startup
SQL> @?/rdbms/admin/utlrp.sql
7.问题处理
现象:
SQL> alter tablespace temp drop tempfile 1;
alter tablespace temp drop tempfile 1
*
第 1 行出现错误:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1026
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
SQL> alter database tempfile 'D:\ORACLE\ORADATA\JYC\TEMP01.DBF' drop;
数据库已更改。
SQL>
ALTER
SIZE 100M;
ALTER
100M
*
第 1 行出现错误:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1026
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-04045: 在重新编译/重新验证OGGADM.DDLREPLICATION 时出错
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06512: 在 line 1149
ORA-04067: 未执行, package body "OGGADM.DDLREPLICATION" 不存在
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
ORA-06508: PL/SQL: 无法找到正在调用 : "OGGADM.DDLREPLICATION" 的程序单元
原因:
源库启用了ogg的ddl模式。
http://blog.itpub.net/21256317/viewspace-1063585/
解决办法:
禁用ogg的触发器即可。
方法1:ALTER TRIGGER GGS_DDL_TRIGGER_BEFORE DISABLE;即可。
方法2:可以从源库ogg目录中拷贝ddl_disable.sql和params.sql两个文件到目标库上的f盘下。修改ddl_disable.sql指定params.sql绝对路径。
SQL> conn /as sysdba
已连接。
SQL> @f:\ddl_disable.sql
触发器已更改
SQL>
ALTER
表空间已更改。
SQL> select trigger_name from dba_triggers where owner='OGGADM';
未选定行
SQL> select trigger_name,status from dba_triggers where owner='SYS';
TRIGGER_NAME
------------------------------ --------
GGS_DDL_TRIGGER_BEFORE
AW_DROP_TRG
LOGMNRGGC_TRIGGER
AW_TRUNC_TRG
AW_REN_TRG
XDB_PI_TRIG
CDC_ALTER_CTABLE_BEFORE
CDC_CREATE_CTABLE_AFTER
CDC_CREATE_CTABLE_BEFORE
CDC_DROP_CTABLE_BEFORE
已选择10行。
SQL> select comp_id,version,status from dba_registry;
COMP_ID
------------------------------ ------------------------------ ----------------------
EM
AMD
SDO
ORDIM
XDB
CONTEXT
EXF
RUL
OWM
CATALOG
CATPROC
COMP_ID
------------------------------ ------------------------------ ----------------------
JAVAVM
XML
CATJAVA
APS
XOQ
已选择16行。
重新执行第6步,更新数据字典。
Conn /as sysdba
Shutdown immediate
Startup upgrade
@?/rdbms/admin/catupgrd.sql
select comp_id,version,status from dba_registry;全部组件valid
select owner,object_name,object_type from dba_objects where status='INVALID'
OWNER
-------------------- ------------------------------ --------------------
SYS
SYS
SYS
FLOWS_FILES