ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 利用RMAN迁移表空间碰到的问题(三)

利用RMAN迁移表空间碰到的问题(三)

原创 Linux操作系统 作者:yangtingkun 时间:2009-03-14 20:57:08 0 删除 编辑

尝试10.2的新特性RMANTRANSPORT TABLESPACE进行表空间的迁移过程,其中碰到了不少问题,简单总结一下。

这一篇介绍TRANSPORT TABLESPACE命令碰到的RMAN-6034错误。

利用RMAN迁移表空间碰到的问题(一):http://yangtingkun.itpub.net/post/468/480070

利用RMAN迁移表空间碰到的问题(二):http://yangtingkun.itpub.net/post/468/480171

 

 

这个错误其实是由于对TRANSPORT TABLESPACE命令不了解造成的:

RMAN> run
2> {
3> allocate channel c1 device type disk format '/data1/backup/%U';
4> transport tablespace yangtk auxiliary destination '/data1/backup'
5> datapump directory d_output dump file 'yangtk_meta.dp'
6> export log 'yangtk_meta.log' import script. 'yangtk_imp.src'
7> tablespace destination '/data1/backup';
8> }

分配的通道: c1
通道 c1: sid=146 devtype=DISK

RMAN-05026: 警告: 假定以下表空间集适用于指定的时间点

表空间列表要求具有 UNDO
表空间 SYSTEM
表空间 UNDOTBS1

使用 SID='hmAy' 创建自动实例

供自动实例使用的初始化参数:
db_name=TEST
compatible=10.2.0.3.0
db_block_size=8192
db_files=200
db_unique_name=tspitr_TEST_hmAy
large_pool_size=1M
shared_pool_size=110M
#No auxiliary parameter file used
db_create_file_dest=/data1/backup
control_files=/data1/backup/cntrl_tspitr_TEST_hmAy.f


启动自动实例 TEST

Oracle 实例已启动

系统全局区域总计     205520896 字节

Fixed Size                     2028912 字节
Variable Size                146803344
字节
Database Buffers              50331648
字节
Redo Buffers                   6356992
字节
自动实例已创建

内存脚本的内容:
{
# set the until clause
set until  scn 3558059;
# restore the controlfile
restore clone controlfile;
# mount the controlfile
sql clone 'alter database mount clone database';
# archive current online log for tspitr to a resent until time
sql 'alter system archive log current';
# avoid unnecessary autobackups for structural changes during TSPITR
sql 'begin dbms_backup_restore.AutoBackupFlag(FALSE); end;';
}
正在执行内存脚本

正在执行命令: SET until clause

启动 restore 09-1 -09


删除自动实例
关闭自动实例
Oracle
实例已关闭
自动实例已删除
释放的通道: c1
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: tranport tablespace
命令 ( 01/09/2009 02:19:28 ) 失败
RMAN-03015:
在存储的脚本Memory Script中出现错误
RMAN-06034:
执行此命令时必须至少分配一个通道

这个错误其实很简单,由于TRANSPORT TABLESPACE命令需要创建AUXILIARY实例,所以需要创建AUXILIARY CHANNEL。而上面采用了RUN的方式运行TRANSPORT TABLESPACE命令,虽然ALLOCATE了一个CHANNEL,但是并没有分配AUXILIARY CHANNEL,所以导致RMAN在运行过程中碰到了这个问题。

解决方法很简单,如果要使用RUN的方式,就手工分配一个AUXILIARY CHANNEL,或者直接使用命令的方式,RMAN会自动创建AUXILIARY CHANNEL

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-567355/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10438397