`
wanglihu
  • 浏览: 909734 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江
社区版块
存档分类

Oracle10g的Asm应用于数据存储管理

阅读更多

摘要 随着数据库的持续运行,数据库的大小不断扩大,要求不断增大系统的存储容量,对于普通的文件系统,增加存储的过程非常复杂。Oracle10g的自动存储管理系统(automatic storage management asm)就是针对该问题而产生的,它大大简化了数据库存储系统的管理。

 

1 前言

 

如今,大型数据库系统要求尽量减少有计划的停机时间,同时随着数据库运行时间的持续增加,数据库的大小和数据库的文件数目也在不断增加,这种趋势导致磁盘容量和数据库大小每隔几年就翻一番,但是dba人数在这期间一般不会翻倍,因此要求dba管理更多和更大的数据库;还有一个问题,当数据库的存储容量不足时,向数据库添加磁盘,以增加磁盘容量时,普通的存储系统需要手工操作,过程非常复杂,而且要求数据库停机。一般包括以下步骤:(1)创建逻辑卷。(2)创建文件系统。(3)安装oracle数据软件。(4)创建并装载数据库。接着还要查找磁盘热点,移动数据文件减少竞争,并担心哪一天磁盘容量又不足,必须再添加更多的磁盘,移动所有的数据文件实现负载平衡,减少竞争。

 

可喜的是随着oracle10g新的存储管理特性asmautomatic storage management,自动存储管理)的出现,这种情况可以动态的改变了.

 

Asm集成了文件系统和卷管理器,它特别为oracle数据文件而构建。它扩展了samestripe and mirror everything)的概念以优化性能,不再需要手工io调整(合理布局数据文件避免热点),自动实现数据文件的条带和镜像,在不停机的情况下,可以向存储系统增加磁盘,并自动调整数据文件的分布;另外,asm允许创建一个存储池(称为磁盘组),并管理文件的命名和数据库文件在磁盘上的放置,这些对于用户和管理人员来说都是透明的,屏蔽了底层数据文件的管理;还可以使用sql命令,命令行接口或企业管理器改变asm的存储如添加磁盘,删除磁盘等。可见,使用asm大大简化了数据库的storage managementprovisioning

 

2 Asm的结构

 

Asm的主要组件包括磁盘组、磁盘、失败组、文件和模版,下面一一介绍:

2.1 磁盘组

 

包含一组磁盘,该组磁盘作为一个单元进行管理。它是asm中最高级的数据结构,类似于逻辑卷管理器的卷组,但Asm文件系统层在磁盘组中隐含创建,该文件系统对用户是透明的,只能通过asm数据库接口和命令行工具访问;并具有自动的文件级条带和镜像的能力,在asm磁盘组中创建的数据库文件以文件分区(file extents)存储,文件的文件分区均匀的分布在磁盘组中所有联机磁盘上,提供均匀的i/o负载。磁盘组的类型有三种:高冗余的磁盘组,提供三路镜像;正常冗余磁盘组,提供两路镜像;外部冗余磁盘组,asm不提供镜像保护,镜像级别由外部存储系统决定,它决定了磁盘组中文件的镜像级别,可以在创建磁盘组时指定磁盘组的类别。

 

2.2 磁盘

 

磁盘组中的磁盘称为asm磁盘,当asm实例启动时,它自动发现所有可用的磁盘,决定磁盘属于那个磁盘组。磁盘是一个广义的概念,它可以是一个分区,一块磁盘,一个逻辑单元号还可以是nas的文件。磁盘有各种header statuses,反映了磁盘的状态:

Former 以前磁盘是磁盘组的一部分。

Candidate 表示磁盘可用,并可以添加到磁盘组。

Member磁盘已经是磁盘组的一部分。

Provisioned 类似于candadate因为对于磁盘组可用。但是,表示该磁盘使用asmlib已经配置或可用。

2.3 失败组

 

对于不使用external redundancy的系统,asm利用失败组提供了内部冗余机制和可用性,失败组是磁盘组的一个子集,它是多个磁盘的集合,当磁盘组的某个组件损坏后,这些磁盘变得不可用。例如:磁盘控制器或整个阵列都是一个失败组。如果为磁盘组定义多个失败组,asm能够容忍单个失败组中的多个磁盘同时失败。

 

2.4 文件

 

写在asm磁盘上的文件称为asm文件,它的名字由asm自动产生,文件的格式为+group/dbname/file_type/file_type_tag.file.incarnation,称为完全合格的asm文件名。

+group磁盘组名字。

 

dbname是数据库的DB_UNIQUE_NAME

 

file_type oracle的文件类型。

 

file_type_tagoracle的文件类型有关的信息,对于特定文件它是固定的。

 

file.incarnation file/incarnation , 保证了唯一性。

 

例如asm中控制文件的名称为:

+dgroup2/sample/controlfile/Current.256.541956473

2.5 模版

 

模版是文件的属性集,在asm磁盘组中创建文件时,用来设置每种类型的数据库文件的条带和镜像属性。用户可以自定义模版。

 

3 Asm组成与工作原理:

 

3.1 Asm实例

 

Asm实例是一个特殊的oracle实例,用来管理磁盘组中的磁盘,实例通常命名为+asm,用instance-type=asm初始化参数启动,不像数据库实例,asm实例不包含物理文件,如:日志文件、控制文件。

3.2 Asm实例的后台进程:

 

Asm实例除了具有与数据库实例相同的进程如SMON, PMON, LGWR外,还包括两个与磁盘组管理有关的进程,一个是rbal,它主要协调磁盘组的重新平衡活动;另一个是arb0arb1等,这是一组从进程,在磁盘组重新平衡过程中,它们执行实际的数据分区的移动。

 

3.3 Css集群同步服务Cluster Synchronization Services

 

Asm要求安装css,并且在服务器启动时自动启动。css维持asm实例和数据库实例的同步,磁盘组装载后,asmcss注册磁盘组名,实例名和oracle home路径名。接着数据库实例使用这些注册的数据结构建tns连接串,数据库实例使用该连接串连接到asm实例,进行卷管理活动。

3.4 数据库新增进程:

 

数据库实例中新增加了三个进程以支持asm磁盘组和结构,实现asm实例与数据库实例的通信。

Rbal 该进程负责磁盘组中所有磁盘的打开。

Asmb 该进程使用磁盘组名称联系css,并得到asm连接串,接着使用该连接串连接到asm实例。使用该永久的连接,可以交换周期性的消息如:用来更新统计并提供心跳机制。在需要asm干预的操作中,如创建文件,数据库前台直接连接到asm实例执行这个操作,完成文件创建后,数据库文件分区映射由asm发送到asmb。另外,asmb还向asm实例发送数据库io 统计。

O00x 一组从进程,建立到asm实例的短暂连接,x1-10的编号。通过这个连接池,数据库进程可以向asm实例发送消息。例如打开文件,利用从进程向asm实例发送打开请求。但是,从进程不用于长时间的操作如:创建文件。从进程池连接为短暂的请求服务,消除了登录asm实例的开销,这些进程在不使用时即关闭。

3.5 数据库实例与asm实例交互

 

数据库实例是asm实例的一个客户,数据库与asm的通讯在节点内部进行,对asm文件的操作象对文件系统文件的操作一样,例如:所有的文件访问直接执行并没有asm的干预。当创建,删除,打开文件时,数据库实例与asm实例相互作用,从asm实例读取文件分布,接下来的i/o操作使用存储在数据库实例中的分区映射。如果存储配置改变,如:添加,删除磁盘或磁盘失败都会引起asm与数据库实例相互作用。

 

 

4 军卫一号向oracle10g asm的迁移

 

该过程分两步进行,第一步是数据库的升级操作;第二步是数据库文件从普通文件系统迁移到asm

4.1 数据库的升级

 

现在,军队各个医院的军卫一号信息系统数据库主要采用oracle8ioracle9i版本,只有极少数使用oracle10g第二版。要使用oracle10gasm特性,首先升级oracle数据库到oracle10goracle数据库升级有多种方法,主要有imp/exp逻辑备份工具;数据库升级助手图形化工具;还有oracle提供的升级脚本。具体的升级过程可以参考oracle文档。

4.2 数据库文件从普通文件系统向asm的迁移

 

数据库升级到oracle10g后,数据库文件的存储使用普通的文件系统,要使用asm特性,需要把数据库迁移到asm,这种迁移可以使用oraclerman工具手工迁移,还可以使用企业管理器提供的图形化工具。在实施迁移前,需要对asm磁盘组进行规划。这里我们使用了两个磁盘组每个磁盘组两块磁盘,一个是data磁盘组,主要放置数据库文件。另一个是flashrec磁盘组,主要用于oracle10g的快速恢复区,其中放置rman备份文件,数据库闪回日志等。这里具体介绍rman的手工迁移过程:

(1) 备份升级好的军卫一号数据库文件,这里要求文件的备份副本。

 

BACKUP AS COPY INCREMENTAL LEVEL 0 DATABASE

 

FORMAT '+DATA' TAG 'ORA_ASM_MIGRATION';

 

备份后归档当前日志文件,保证备份的一致性。

 

RMAN> sql 'alter system archive log current';

 

(2) asmflashrec磁盘组上创建恢复区。

 

通过设置参数DB_RECOVERY_FILE_DEST DB_RECOVERY_FILE_DEST_SIZE即可创建恢复区。

 

在文本参数文件中修改参数

 

Alter system set DB_RECOVERY_FILE_DEST_SIZE=20G;

 

Alter system set DB_RECOVERY_FILE_DEST='+FLASHREC';

 

(3) 移植控制文件到asm

 

修改参数文件中的参数control_files

 

Alter system set

 

control_files='+DATA/control01.ctl','+FLASHREC/

 

control02.ctl ' 其中一个控制文件存放在flashrec恢复区,提高了控制文件的可用性。

 

使用rmanasm上创建控制文件:

 

RMAN> shutdown immediate;

 

RMAN> startup nomount PFILE='d:tmppfile.ora';

 

RMAN> restore controlfile from ‘D:oracleproduct10.2.0oradatats control01.ctl';

 

RMAN> alter database mount;

 

RMAN> switch database to copy;

 

RMAN> recover database;

 

(4) asm移植临时文件。

 

RMAN > run {

 

set newname for tempfile 1 to '+DATA'

 

switch tempfile all;

 

}

 

(5) 打开数据库,完成数据库文件的迁移。

 

SQL> ALTER DATABASE OPEN;

 

 

 

6 Asm的管理

 

Asm的管理涉及内容比较多,主要包括磁盘组的管理如添加磁盘、删除磁盘,改变磁盘的大小,装载磁盘组,卸载磁盘组,手动重新平衡磁盘组等操作;磁盘组中文件和目录的管理;在磁盘组中创建数据库文件等。这些操作都可以通过sql命令完成,此外,oracle还提供了命令行工具asmcmd和企业管理器图形化工具,都可以对asm进行管理和操作,有关这些操作的详细地使用可以参考oracle的文档。在这里要强调的一点是asm的备份问题,asm<span style="FO

评论

相关推荐

    Oracle10g精简绿色版

    ● 自动存储管理(ASM) :这是一项Oracle欲代替存储陈列软件、卷管理软件的技术,它允许用户创建镜像、条带化硬件。在Oracle 10g网格计算环境中,它允许用户比较方便地在节点分配硬盘与硬盘组,从而获得负载均衡的...

    构建最高可用Oracle数据库系统 Oracle 11gR2 RAC管理、维护与性能优化

    9.5创建与管理ACFS 9.5.1 ACFS驱动资源管理 9.5.2 ACFS注册表资源管理 9.5.3 ASMCA图形化工具创建ACFS 9.5.4 ASMCMD管理卷 9.5.5手动创建ACFS 9.6 ASM管理工具 9.6.1 SRVCTL工具 9.6.2 ASMCA工具 9.6.3 EM...

    Oracle Database 11g初学者指南--详细书签版

    他的关注方向包括Oracle产品集,以及其他前沿技术和这些技术在优化数据仓库设计和部署的应用。他还是各种技术会议的主讲人,包括COLLABORATE、Oracle OpenWorld和其他地方与区域会议。  Michael Abbey是公认的...

    Oracle 11g高可用性指南

    我们将为您介绍Oracle 11g数据库的高可用性功能,其中包括了真正应用集群(RAC)、自动存储管理(ASM)以及数据卫士等。通过阅读本次技术手册,相信您对高可用性的定义将有更加深入的了解,同时在进行高可用环境构建...

    Oracle升级迁移实战文章和方案文档汇总-共168篇.xlsx

    Oracle 10g-&gt;11g XTTS迁移方案 Oracle 9i至11g exp迁移 Oracle数据库三种迁移方案 Oracle DataGuard方式迁移数据库 数据库迁移升级最佳实践9i-10g-11g Oracle ASM扩容&数据迁移文档 06使用XTTS技术进行U2L跨平台数据...

    oracle10g课堂练习I(2)

    Oracle Database 10 g :“g”代表网格 1-6 Oracle 数据库体系结构 1-8 数据库结构 1-9 Oracle 内存结构 1-10 进程结构 1-12 Oracle 实例管理 1-13 服务器进程和数据库缓冲区高速缓存 1-14 物理数据库结构 1-...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第2/2部分)

     Bob Bryla是Oracle 9i和10g的认证专家,他在数据库设计、数据库应用程序开发、培训和Oracle数据库管理等方面拥有20多年的工作经验,他也足Dodgeville的Land'End公司的首席Internet数据库设计师和Oracle DBA. ...

    oracle数据库11G初学者指南.Oracle.Database.11g,.A.Beginner's.Guide

    《Oracle Database 11g初学者指南》带领读者循序渐进地学习数据库设置、管理、编程、备份和恢复。还深入介绍了SQL和PL/SQL。为了易于学习,这本独特的Oracle Press指南是这样组织的: 核心概念——Oracle Database ...

    [手工整理]208个Oracle安装文档,包含各个平台各个版本的单实例RAC以及DataGuard(1).xlsx

    62 Install Oracle 9i 10g 11g 操作系统兼容列表及配置要求 63 Install Oracle BIEE-12c-Linux安装配置手册 64 Install Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Solaris and MS Windows Operating ...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第1/2部分)

     Bob Bryla是Oracle 9i和10g的认证专家,他在数据库设计、数据库应用程序开发、培训和Oracle数据库管理等方面拥有20多年的工作经验,他也足Dodgeville的Land'End公司的首席Internet数据库设计师和Oracle DBA. ...

    2013中国数据大会ppt(2)

    大型业务系统Oracle数据库 10G升级11G实践.pdf 基于Oracle数据库的数据防护.pdf Oracle ASM的IO架构优化实践.pdf SQLAUTO——数据库SQL变更自动化管理.pdf Developer and DBA Guide to Whats New in MySQL 5.6.pdf ...

    2013中国数据库大会ppt(1)

    大型业务系统Oracle数据库 10G升级11G实践.pdf 基于Oracle数据库的数据防护.pdf Oracle ASM的IO架构优化实践.pdf SQLAUTO——数据库SQL变更自动化管理.pdf Developer and DBA Guide to Whats New in MySQL 5.6.pdf ...

    2013中国数据库大会ppt(3)

    大型业务系统Oracle数据库 10G升级11G实践.pdf 基于Oracle数据库的数据防护.pdf Oracle ASM的IO架构优化实践.pdf SQLAUTO——数据库SQL变更自动化管理.pdf Developer and DBA Guide to Whats New in MySQL 5.6.pdf ...

    2013年中国数据库大会PPT第一部分

    22.大型业务系统Oracle数据库 10G升级11G实践.pdf 23.基于Oracle数据库的数据防护.pdf 24.Oracle ASM的IO架构优化实践.pdf 25.SQLAUTO——数据库SQL变更自动化管理.pdf 26.Developer and DBA Guide to Whats New in ...

    ORACLE数据库 安装配置规范 (V2.0.1)

    5.3.3.2 临时表空间的存储参数(Oracle9i/10g) 26 5.3.3.3 Undo/temp表空间的估算 26 5.4 其他文件设计 26 5.4.1 参数文件 27 5.4.1.1 参数文件命名规则 27 5.4.2 控制文件 27 5.4.2.1 控制文件命名规则 28 5.4.3 ...

    网管教程 从入门到精通软件篇.txt

    AIF,AIFF:音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式 ANI:Windows系统中的动画光标 ARC:LH ARC的压缩档案文件 ARJ:Robert Jung ARJ压缩包文件 ASD:Microsoft Word的自动保存文件;...

Global site tag (gtag.js) - Google Analytics