oracle xtts 在aix环境上无法运行全备脚本

随着业务升级,部分老机器(aix)的数据需迁移至新的服务器上(linux-x86_64),而且数据量也比较大,还涉及较多的blob字段,再加上又是跨平台,跨版本迁移,所以这里选择使用oracle官方推荐的工具xtts。

环境及工具信息

操作系统(源端):aix 5.1 x64
操作系统(目标端):redhat 7.5 x64
数据库版本(源端):11.2.0.3
数据库版本(目标端):11.2.0.4
xtts工具版本:v3

前期所有准备工作完成后,开始第一次全量备份,然而,意外出现

备份脚本xttdriver.pl无法成功运行,错误提示如下

oracle@P570A1:/oradata/xtts$$ORACLE_HOME/perl/bin/perl xttdriver.pl -p -debug 3
============================================================
trace file is /oradata/xtts/prepare_Oct19_Wed_11_13_51_941//Oct19_Wed_11_13_51_941_.log
=============================================================

--------------------------------------------------------------------
Parsing properties
--------------------------------------------------------------------

Key: backupondest
Values: /oradata/xtts/dbtzy
Key: platformid
Values: 6
Key: backupformat
Values: /oradata/xtts/dbtzy
Key: parallel
Values: 3
Key: storageondest
Values: /oradata/xtts/dbtzy
Key: dfcopydir
Values: /oradata/xtts/dbtzy
Key: stageondest
Values: /oradata/xtts/dbtzy
Key: rollparallel
Values: 2
Key: tablespaces
Values: ZHZX_SJDW
Key: getfileparallel
Values: 4

--------------------------------------------------------------------
Done parsing properties
--------------------------------------------------------------------


--------------------------------------------------------------------
Checking properties
--------------------------------------------------------------------

ARGUMENT tablespaces
ARGUMENT platformid
ARGUMENT backupformat
ARGUMENT dfcopydir

--------------------------------------------------------------------
Done checking properties
--------------------------------------------------------------------

ORACLE_SID  : dbtzy
ORACLE_HOME : /oracle/product/11.2.0
PRIMARYElapsed: 00:00:00.00


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Error:
------
Unable to run script on PRIMARYElapsed: 00:00:00.00
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

网上查遍了所有资料(包括mos),也问过了很多人,都无法解决。最终是开了sr得以解决。

问题原因(内容来源于sr给我的回复):

根据 perl 代码,它是通过查询 select database_role from v$database; 来获取角色信息。但显然您的截图中多出了未预期的串 "Elapsed: 00:00:00.00",
表明您的 sqlplus 中开启了时间回显(set timing on),导致每次查询都多出一个Elapsed 信息。

解决办法

找到如下文件:
$ORACLE_HOME/sqlplus/admin/glogin.sql
然后去掉 set timing on 代码。

 至此,xtts问题完美解决,终于开启了数据的迁移工作。

posted @ 2022-10-19 14:49  小年青。  阅读(54)  评论(0编辑  收藏  举报