oracle12c xtts迁移,记录一次XTTS迁移碰到的问题

最近在做一次迁移,原库 AIX-11203RAC ,目标端linux 11204 RAC,数据量3t左右,期间也是出现了点问题,现在记录一下,以供大家参考:

1 在打开BCT卡住

alter database enable block change tracking using file '/home/oracle/trace.log';

再打开快跟踪的时候,一直hang在那边,几分钟后对业务造成了影响,如下图所示,

179498ca89440122a4598e04606b7d34.png

1068会话为执行BCT的会话,可以看到被CKPT锁住,CKPT又被CTWR锁住,CTWR又被1068BCT会话锁住,一个死循环,看到这里,就感觉是bug,以enq: CT - state change gate 为关键字在mos上搜索之后,确实有较多的的文章能看到这是bug。

参考过 High Waits On 'block change tracking buffer space' - Checkpoint Contention With BLOCK CHANGE TRACKING or RMAN Incremental Backup (Doc ID 2094946.1)等修改 _bct_buffer_allocation_max 参数,但是无效。

在另外一篇文章 RMAN Backup Suddenly Stopped / Hanged with message: RMAN-08606: WARNING: The change tracking file is invalid. (Doc ID 2173783.1)中,看到将追踪文件放到集群中会有效果,试了下,立马就过去了。

SQL> alter database enable block change tracking using file '+NEWDATA/trace.log';

2 源端目录多个,目标端目录只有一个

在增量的过程中有如下报错:

Error:

------

Datafile path +ARCH/temp and source directory object path  doest not match

刚开始,想当然的

create or replace directory sourcedir as '+DATA/','+ARCH/datafile';

实际上,要根据文件的语法来,可参考

xtt.properties 中的语法

每个文件单独一个directory,然后配置如下:

srcdir=SOURCEDIR1,SOURCEDIR2

dstdir=DESTDIR

3 前滚报错

ORA-19624: operation failed, retry possible

ORA-19870: error while restoring backup piece

+DATA/xib_50v614a5_1_1_7_14_16_18_25_27_29_31_33

ORA-19625: error identifying file /oracle/app/product/11.2.0/db_1/dbs/

+data/HTBASE/DATAFILE/htbase02.dbf

ORA-27037: unable to obtain file status

这个问题比较简单,实际上因为在创建destir的时候,前面多加了一个空格,导致它默认将空格转换成了$ORACLE_HOME/dbs.  修改directory之后,注意要手动修改xttnewdatafiles文件,该文件决定了文件存放的位置。

4 前滚后有warnning

如下图所示,该报错可以忽略,无法删除asmcmd中的上传的增量文件。

perl: warning: Falling back to the standard locale ("C").

Can't locate strict.pm in @INC (@INC contains: /oracle/grid/crs_1/perl/lib/5.10.0/x86_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/5.10.0 /oracle/gr

id/crs_1/perl/lib/site_perl/5.10.0/x86_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/site_perl/5.10.0 /oracle/grid/crs_1/lib /oracle/grid/crs_1/lib/a

smcmd /oracle/grid/crs_1/rdbms/lib/asmcmd /oracle/grid/crs_1/perl/lib/5.10.0/x86_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/5.10.0 /oracle/grid/cr

s_1/perl/lib/site_perl/5.10.0/x86_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/site_perl/5.10.0 /oracle/grid/crs_1/perl/lib/5.10.0/x86_64-linux-thre

ad-multi /oracle/grid/crs_1/perl/lib/5.10.0/x86_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/5.10.0 /oracle/grid/crs_1/perl/lib/site_perl/5.10.0/x86

_64-linux-thread-multi /oracle/grid/crs_1/perl/lib/site_perl/5.10.0 /oracle/grid/crs_1/perl/lib/site_perl .) at /oracle/grid/crs_1/bin/asmcmdcore line 143.

BEGIN failed--compilation aborted at /oracle/grid/crs_1/bin/asmcmdcore line 143.

ASMCMD:

5 做增量的时候报错如下:

该报错其实很常见,做rman备份的时候经常遇到,但是也经常忽略掉,没啥影响。

但是在xtts增量的时候,该报错导致 tsbkupmap.txt 文件没有产生,所以必须要解决。

RMAN-12016: using channel ORA_DISK_1

RMAN-06518: backup will be obsolete on date 2020-07-30 09:51:07

RMAN-06520: archived logs will not be kept or backed up

RMAN-08008: channel ORA_DISK_1: starting full datafile backup set

RMAN-08010: channel ORA_DISK_1: specifying datafile(s) in backup set

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of backup command at 07/23/2020 09:51:08

RMAN-03009: failure of backup command on ORA_DISK_1 channel at 07/23/2020 09:51:08

ORA-00245: control file backup failed; target is likely on a local file system

方法其实也简单,configure下就好了,将控制文件备份放到集群中

RMAN TARGET /

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+NEWDATA/snapcf_HTBASE1.f';

暂时就这么多,以后有新的再补充。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值