研发内部快速备份、恢复方案[精选].doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
研发内部快速备份、恢复方案[精选]

研发内部EAS帐套快速备份、恢复方案 目前研发内部备份、恢复帐套主要是采用逻辑方式。Oracle采用exp/imp,DB2采用export、load,该方式下帐套备份文件能跨操作系统平台及数据库版本传输,因此严格来说只是一种数据传输方式,适用于远程传帐套,如果只是在研发内部高效、快捷备份、恢复帐套,则应该以物理方式为主,辅助使用逻辑方式。 Oracle快速备份、恢复 表空间备份、恢复方式 无论是测试库还是开发库,最终都需要统一规范命名,也就是对不同用户帐套使用的表空间区分开来,对应使用唯一表空间命名,即 EAS_D_用户名英文缩写_STANDARD。如:万科帐套,对应表空间命名为EAS_D_WANKE_STANDARD,只有这样,开发库、测试库同步帐套才会清晰、明了,表空间方式备份、恢复方式的性能优势才能最大程度发挥出来。 表空间传输是一种快速在数据库间移动数据的办法,是把一个数据库上的数据文件复制到另外一个数据库中,只导出表空间的定义信息到DMP文件,而不是把整个数据文件导出成Dmp文件,因此表空间方式移动数据就象复制文件一样快。一旦研发内部将用户帐套表空间命名统一规范后,帐套从测试库恢复到开发库将变的非常方便。如果同一个数据库下恢复到之前表空间方式备份的帐套,则需要先删除该帐套对应的表空间,才能恢复。这种类型的恢复在性能测试中会经常用到。 传输表空间相关规则 ·Oracle9i版本源数据库和目标数据库要求运行在相同的硬件平台上。Oracle10g 版本 可跨平台,但不同字节顺序的平台数据文件需要转换。 ·源数据库与目标数据库必须使用相同的字符集(UTF8)。 ·源数据库与目标数据库一定要有相同大小的数据块(默认为8K) ·目标数据库不能有与迁移表空间同名的表空间,因此如果同一个数据库下恢复之前表空间方式备份的帐套,需要先删除该帐套对应的表空间。 ·必须传输自包含的对象集: 可以用以下的方法来检测一个表空间或一套表空间是否符合传输标准: SQLexec sys.dbms_tts.transport_set_check(‘EAS_D_NM_STANDARD’,true); SQLselect * from sys.transport_set_violations; 如果没有行选择,表示该表空间只包含表数据,并且是自包含的。对于有些非自包含的表空间,如需要将关联的表空间一起传输。 注:目前EAS只需要关注BLOB、CLOB类型字段是否与其它字段存在同一表空间,一般情况下是在同一表空间。 表空间备份、恢复帐套详细步骤 设置源数据库需要传输的帐套对应的表空间为只读 alter tablespace EAS_D_NM_STANDARD read only; 导出表空间定义信息 ORACLE9i 版本 Windows下: exp userid=”””/ as sysdba””” file=easnm.dmp log=easnm.log transport_tablespace=y tablespaces=(EAS_D_EASNM_STANDARD) Linux、Unix下: export ORACLE_SID=EASNM (环境变量设置为需要导出的数据库实例名) Exp userid=\”sys\orcl as sysdba\” file=easnm.dmp log=easnm.log transport_tablespace=y tablespaces=(EAS_D_EASNM_STANDARD) 以上需要注意的是 ·为了在SQL中执行EXP,USERID必须用三个引号,在UNIX中也必须注意避免“/”的使用 ·必须使用sysdba才能操作 ·这个命令在SQL中必须放置在一行 ORACLE10G 以上版本 expdp system/oracle dumpfile=eas_d_NM_standard.dmp directory=eas_expdp_dir transport_tablespaces=EAS_D_EASNM_STANDARD 注:导出用户不能使用导出帐套所在的用户名,这里使用的是system,目录名,导出的表空间名根据具体环境情况修改。 如导出的表空间需跨平台,需考虑数据文件是否需要转换 查询Oracle10g支持的平台转换,相同字节顺序的平台之间传输表空间时,不需要任何转换 SQL select * from v$transportable_platform order by platform_id; 如果字节顺序不同,需要使用rman转换文件格式: $ rman target / RMAN convert tablespace EAS_D_EASNM_STANDARD  

文档评论(0)

dart002 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档