网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

基于PLSQL的数据库备份方法

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

【网学网提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。网学会员整理了基于PLSQL的数据库备份方法的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!


    
    基于PLSQL的数据库备份
    
    
    
    华为技术有限公司
    版权所有侵权必究
    
    
    基于PLSQL的数据库备份方法内部公开
    修订记录
    华为机密,未经许可不得扩散
    
    
    
    基于PLSQL的数据库备份方法内部公开
    目录
    第1章导入数据的苦恼................................................................................................................1第2章PL/SQLDeveloper导入导出工具.....................................................................................1
    2.1导出功能介绍.........................................................................................................................22.2导入功能介绍.........................................................................................................................32.3如何解决导出clob和blob类型数据报错的问题....................................................................4
    华为机密,未经许可不得扩散
    
    
    
    基于PLSQL的数据库备份方法内部公开
    关键词:
    PLSQL数据备份CLOBBLOB
    摘要:
    我们一直在寻求一个好的工具,这个工具可以将业务数据库的表数据进行导出,并且支持灵活的数据导入要求,以便进行测试数据库搭建和紧急故障恢复。
    本文就plsqldev工具提供的“PL/SQLDeveloper”导出表的工具做一个比较详细的介绍。并且专门针对“PL/SQLDeveloper”无法导出的CLOB和BLOB数据类型的操作方法做了细致的描述。
    
    缩略语清单:
    参考资料清单:
    华为机密,未经许可不得扩散
    
    
    基于PLSQL的数据库备份方法内部公开
    第1章导入数据的苦恼
    最近,某局点的工程师一直再为搭建测试数据库的事情烦恼,主要碰到如下困难:1、
    使用oracledump方式导出的数据在导入的时候不能随意选择一张表的数据进行导入;一般业务的表的数量都有1000左右,在出现由于某张表数据异常导致的故障时,用dump文件进行恢复基本不可行或者很费事;
    2、
    表存在外键约束和触发器,使用oracledumpimport方式导入表的时候不能非常简单的禁止触发器和外键,导致大量错误产生,导入的表的数据不全,部分表数据没有导入;
    3、
    当修改了某些表的数据后需要将这些表的数据恢复到测试环境搭建时的数据,import不能将这些表的数据清空后重新导入。
    4、
    当修改了某些表的字段后需要将这些表的数据恢复到测试环境搭建时的数据,import不能将这些表重建后重新导入。
    那么有没有一个工具能够解决上面我们这位工程师的苦恼呢?
    第2章PL/SQLDeveloper导入导出工具
    PL/SQLDeveloper位于PLSQLDEV工具的“Tools”菜单下的“Exporttables?”和“Import
    tables?”下,可以进行数据的导出和导入。
    2009-09-29
    华为机密,未经许可不得扩散第1页,共5页
    
    
    基于PLSQL的数据库备份方法内部公开
    2.1导出功能介绍
    
    
    Whereclause:
    使导出操作支持where条件,比如你只需要导出每张表的10000条记录,可以在输入框里输入
    “rownum<10001”。
    Compressfile:
    选中后支持导出文件的压缩,节省存储空间,但是压缩会占用多余的时间。Includestorage:
    导出的文件中包含建表信息,如果需要在导入的时候能支持建表操作,需要选中该项。
    2009-09-29
    华为机密,未经许可不得扩散第2页,共5页
    
    
    基于PLSQL的数据库备份方法内部公开
    2.2导入功能介绍
    
    
    Droptables:
    支持在导入数据前先删除表,选择该项后,默认选择“Createtables”选项,并且“Truncate
    tables”和“Deletetable”操作变成灰色不可用状态。
    Createtables:
    支持在导入数据前先创建表,比如我们已将建好了用户,这个时候需要导入表而之前又没有执
    行建表脚本的时候,可以选中此项。
    Truncatetables:
    支持在导入数据前先清空表数据,想恢复表数据到建测试环境的时候可以使用这个选项,该选
    项和“Deletetables”互斥。
    Deletetables:
    支持在导入数据前删除表数据,这个选项目前还没有发现比较特殊的使用意义,该选项和
    “Truncatetables”互斥。该选项的导入速度大大慢于“Truncatetables”,一般使用“Truncatetables”。
    
    2009-09-29
    华为机密,未经许可不得扩散第3页,共5页
    
    
    基于PLSQL的数据库备份方法内部公开
    2.3如何解决导出clob和blob类型数据报错的问题
    当表字段中含有clob和blob类型数据时,使用PL/SQLDeveloper导出会报streamreaderror
    的错误,导出操作终止,说明PL/SQLDeveloper方式导出不支持这种类型,oracleexport方式可以支持这种类型。
    由于需要导出的表很多,PL/SQL在导出前都要对需要导出的表进行分析,通常都会花费十几分
    钟的时间,然而由于某张表存在clob和blob类型数据时就会异常终止,那之前的操作时间就会浪费,为了导出所有表需要将导出的表进行标记,只导出没有clob和blob类型数据的表。我们通常的做法是在导出表的时候用ctrl或者shift按键进行手工选择,通过导出的日志记录不能导出的表,然后手工将这些表反选出待导出的表。但是这样操作费时费力,需要通过不停反复的操作,才能知道哪些表不能导出。
    下面介绍一下如何使用oracle系统视图all_tab_columns和PL/SQL在导出表的时候提供的
    Objectselection功能快速导出不包含clob和blob的表数据。
    1、
    使用下面的sql语句拼出Objectselection的文件内容。
    --不包含clob和blob的表
    selectdistinct('TABLE"'||a.OWNER||'"."'||a.TABLE_NAME||'"')fromsys.all_tab_columnsa
    wherea.OWNER='ICDPUB'anda.TABLE_NAMEnotin(selectt.TABLE_NAMEfromsys.all_tab_columnstwheret.OWNER=
    'ICDPUB'andt.DATA_TYPEin('CLOB','BLOB'))
    注意:上面的sql语句里的ICDPUB是用户名2、
    按照上面的语句的执行结果生成Objectselection的文件(后缀是.osf),文件的内容如下:
    PL/SQLDeveloperObjectSelectionFile
    1
    TABLE"ICDPUB"."ACTIVE_ALARMS"TABLE"ICDPUB"."ALLAPPOINT"TABLE"ICDPUB"."ALLOPTIONVIEW"TABLE"ICDPUB"."ALLOTCONFIG"TABLE"ICDPUB"."ALLPAPERAUTHVIEW"TABLE"ICDPUB"."ALLPAPERVIEW"TABLE"ICDPUB"."ALLQUESTIONVIEW"
    2009-09-29
    华为机密,未经许可不得扩散第4页,共5页
    
    
    基于PLSQL的数据库备份方法内部公开
    3、在导出表功能的表选择框里单击右键选择“LoadObjectselection”,选择上一步制作的文件,完成表的选择。
    4、5、
    选择合适的参数,进行导出操作。
    用oracleexport方式导出包含clob和blob的数据。
    2009-09-29
    华为机密,未经许可不得扩散第5页,共5页
    
  • 上一篇资讯: 基本sql(db2与Oracle比照)
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师