暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片
Oracle数据库基于XTTS技术的数据库迁移技术探讨
2135
3页
14次
2020-03-17
10墨值下载
F
福建电脑
UJIANCOMPUTER
福建电脑
2018 年第 2 期
OracleDatabase袁又名 OracleRDBMS袁或简称 Oracle遥 是甲
骨文公司的一款关系数据库管理系统遥 它是目前世界上流行的
关系数据库管理系统袁也是在我国信息系统中使用量最大的数
据库之一遥 随着信息化成为国家发展的纲要袁信息化步伐的加
快袁以及硬件产品更新换代的周期缩短遥 Oracle 数据库迁移的
需求日益增多袁如何高效尧安全尧完整地完成数据库迁移已经成
为一项重要的专项技术遥
本文通过对 OracleXTTS 技术的研究袁 探索使用 Oracle
XTTS技术更高效尧安全地实现 Oracle数据库的迁移遥
1XTTS 技术研究
XTTS(CrossPlatformTransportableTablespaces) 跨平台迁移
表空间袁是 Oracle 自 10g推出的一个用来移动单个表空间数据
以及创建一个完整的数据库从一个平台移动到另一个平台的
迁移备份方法遥 这个技术的前身是 Oracle8i 开始引入的 TTS
技术袁TTS是一种基于表空间传输的物理迁移方法袁它是传输表
空间袁把表空间传输出去袁数据从一个库传输到另外一个库袁但
它仅支持相同平台尧相同块大小之间的表空间传输袁而 XTTS 是
在 TTS 基础上做了一些更新袁支持了跨平台袁可以支持增量备
份遥
表 1 各版本 TTS 技术的演进
从上表可以看出袁经历各个版本的不断演进袁XTTS技术从
11gR2 开始可以支持跨平台尧不同块大小袁可以使用增量备份袁
该技术从真正意义上来讲袁通过迁移不同字节序格式系统之间
的数据袁大大地减少了停机的时间袁可以实现 Oracle 数据库快
捷尧高效尧平稳尧安全地跨平台迁移袁成为跨平台大数据量迁移
的一项重要技术遥
2XTTS 技术实现数据库可迁移的基本操作
基于 Oracle的 XTTS技术进行数据库迁移袁经过反复试验袁
其基本步骤如下流程图所示院
如下结合某省某运营商计费系统的数据库迁移详细说明
基于 XTTS 技术进行数据库迁移的详细步骤遥
基于 XTTS技术的数据库迁移可以分为前期阶段尧 初始化
阶段尧数据同步阶段尧N次增量和正式迁移阶段遥
2.1 前期阶段
2.1.1需要迁移的用户及需要迁移的表空间确认
selectdistincttablespace_namefromdba_segmentswhere
ownerin('XXX')orderbytablespace_name;
2.1.2核对环境
查询目标库袁确认是否有跟本次迁移中的用户和表空间重
名袁如果重名袁需要在目标库修改用户名和表空间名称遥 检查是
否有用户将表创建到本次迁移的表空间外的其他表空间上袁如
Oracle 数据库基于 XTTS 技术的数据库迁移技术探讨
卢锦琛
(中电福富信息科技有限公司 福建福州350013)
【
摘
要
】
随着信息技术、电子技术的的不断发展,硬件平台的更新加快
,
Oracle 数据库的迁移需求日益增加
,数据库
迁移技术成为 IT 行业中的热门话题
。本文对
Oracle 的 XTTS 技术进行研究
,探索使用
XTTS 实现 Oracle 的数据迁移
。
【关键词】XTTS(跨平台迁移表空间);数据库迁移;增量备份
版本 说明 跨平台 不同块 增量备份
Oracle8i
荫 支持同平台渊TTS冤
荫 同数据块大小
Oracle9i
荫 支持同平台渊TTS冤
荫 不同数据块大小
姨
Oracle10gR1
荫 支持跨平台渊XTTS冤
荫 RMAN支持平台 ENDIAN
转换
姨 姨
Oracle10gR2
荫 支持 TDB
荫 RMAN支持平台 ENDIAN
转换
姨 姨
Oracle11gR1
支持传输表空间的中的特定
分区
姨 姨
Oracle11gR2 支持增量备份 姨 姨 姨
图 2XTTS 技术数据库迁移阶段
DOI:10.16707/j.cnki.fjpc.2018.02.051
108· ·
F
福建电脑
UJIANCOMPUTER
福建电脑
2018 年第 2 期
果有袁就需要改造袁将表改造到本次迁移的表空间上遥
selectOWNER,SEGMENT_NAME,SEGMENT_TYPE ta鄄
blespace_namefromdba_segmentswhereownerin ('XXX')and
tablespace_namenotin('YYY');
select OWNER,TABLE_NAME,tablespace_name from
dba_tableswhereownerin ('XXX')andtablespace_namenotin
('YYY');
查看迁移用户索引是否都创建在本次迁移的表空间
colINDEX_TYPEfora10
colOWNERfora20
colTABLE_OWNERfora30
colTABLESPACE_NAMEfora20
select OWNER,INDEX_NAME,INDEX_TYPE,
TABLE_OWNER,TABLE_NAME,TABLESPACE_NAME from
dba_indexeswhereownerin ('XXX')andtablespace_namenotin
('YYY');
2.1.3导出表空间对象
su-oracle
cdxtts
LANG=en_US
nohupimpdpsystem/xxxxxparfile=prfall.sql&
2.1.4检查自包含
排除传输表空间中未能完全包含的对象袁检查是否满足自
包含内容院
execdbms_tts.transport_set_check('YYY',TRUE,True);
select*fromSYS.TRANSPORT_SET_VIOLATIONS;
2.1.5在目标库启动转换实例
$exportORACLE_SID=xtt
$ORACLE_HOME/dbs/init$ORACLE_SID.ora添加如下内容
db_name=xtt
compatible=11.2.0.4.0
$sqlplus/assysdba
SQL>startupnomount
2.2 初始化阶段
2.2.1创建 directory目录和 database_link
在源库创建 sourcedir
createorreplacedirectorysourcedir1as'ZZZZ';
在目标库创建 destdir
createorreplacedirectorydestdir1as'AAAA/BBBB/';
创建 database_link
vi/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/
tnsnames.ora
修改监听内容袁并重新 reload监听
tooss=
(DESCRIPTION=
(ADDRESS = (PROTOCOL = TCP)(HOST =
135.161.94.4)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=sas)
)
)
createpublicdatabaselinkttslinkconnecttosystemidenti鄄
fiedbyxxxusing'tooss';
2.2.2安装 xttconvert脚本并配置
1).源库安装软件并配置参数
将 rman-xttconvert_2.0.zip 软件上传到源库/home/oracle 目
录下
$cd/home/oracle
$mkdirxtts
$cdxtts
$unzip../rman-xttconvert_2.0.zip
$vixtt.properties 修改相应参数袁参数说明如下院
表 2XTTS 配置参数说明
2). 将源库 xtts目录拷贝到目标库
$scp-r/home/oracle/xttsoracle$135.161.26.2:/home/oracle/
2.2.3设置 TMPDIR
源库院$exportTMPDIR=/home/oracle/xtts
目标库院$exportTMPDIR=/home/oracle/xtts
2.3数据同步阶段
2.3.1 在 源 库运行脚本:$ORACLE_HOME/perl/bin/perl
xttdriver.pl-S
2.3.2传送数据文件到目标库:
scp/home/oracle/xtts/xttnewdatafiles.txtoracle@135.161.26.1:
/home/
oracle/xtts/
scp/home/oracle/xtts/getfile.sqloracle@135.161.26.1:/home/o鄄
参数 说明
tablespaces 需要传输的表空间
platformid 源库的 platform_id,selectplatform_idfromv$database;
Srcdir
当使用 dbms_file_transfer时使用袁表示源库存放数据文
件的路径
Dstdir
当使用 dbms_file_transfer时使用袁表示目标库存放数据
文件的路径
srclink
从目标端指向源端的 dblink袁 当使用 dbms_file_transfer
时使用
dfcopydir 源端用于存放数据文件的 copy袁使用 rman时使用
backupformat
源端用于存放增量备份的目录袁无论哪种方式都需要设
置
stageondest
目标端存放数据文件 COPY目标袁和存放增量备份的目
录
storageondest 数据文件的最终存放点
backupondest 增量备份格式转换后的输出目录
convist_home 中转实例的 oracle_home
coninst_sid 中转实例的 sid
asm_home 目标端 asm实例的 SORACLE_HOME
asm_sid 目标端 asm实例的 sid
parallel
目标端 rmanconvert 命 令 时的并行度 渊默认 s冤(rman
copy 和增量备份的并行度由源端 rman 配置的参数决
定冤
rollparallel 目标端 rman增量恢复的并行度渊默认 2冤
Getfileparallel 默认 8袁使用 rman的并行设置
metatransfer
当 SSH互信已经配置通后袁 可以配置该参数为 1袁让
XTTS 产生的临时文件自动传送 destuser,desthost,
desttmpdir参数必须设定
destuser 目标端的用户名
desthost 目标端的主机名
desttmpdir 目标端的 STMPDIR指定的目标
109· ·
of 3
10墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜