详解Oracle 自动存储管理群集文件系统 (Oracle ACFS) 文件系统
sinye56 2024-10-03 00:39 4 浏览 0 评论
概述
Oracle Automatic Storage Management Cluster File System (Oracle ACFS) and Oracle ASM Dynamic Volume Manager (Oracle ADVM) extend Oracle ASM functionality.
ADVM主要是为了使除了数据库之外的第三方应用程序也可以使用asm存储,这样不限于使asm局限于自家的数据库领域。ACFS不能用于linux根分区,不能用于grid的安装目录,不支持数据库文件(即asm存储的文件),使用acfs要依赖于advm卷。下面主要从ASM实例、ASM磁盘组、镜像和故障组、ASM磁盘、AU和Extents来介绍oracle ACFS文件系统。
小编辛辛苦苦整理总结出来的,看完帮忙点个赞哦!
Oracle ASM Instances
1、概念
Oracle ASM metadata is the information that Oracle ASM uses to control a disk group and the metadata resides within the disk group.
Oracle ASM实例具有与Oracle数据库类似的系统全局区域(SGA)和后台进程。Oracle ASM实例装载磁盘组以使Oracle ASM文件可用于数据库实例;Oracle ASM实例不装载数据库。
Oracle ASM实例可以使用Oracle群集软件进行群集;每个群集节点都有一个Oracle ASM实例。如果同一节点上有多个不同数据库的数据库实例,则数据库实例在该节点上共享同一个Oracle ASM实例。
如果标准Oracle ASM集群中某个节点上的Oracle ASM实例失败,则该节点上的所有数据库实例也会失败。但是,在Oracle Flex ASM配置中,Oracle 12c数据库实例不会失败,因为它们可以远程访问另一个节点上的另一个Oracle ASM实例。
2、一个Oracle ASM实例和多个数据库实例的单节点配置
Oracle ASM实例管理元数据并为Oracle ASM文件提供空间分配。当数据库实例创建或打开Oracle ASM文件时,它将这些请求传递给Oracle ASM实例。作为响应,Oracle ASM实例向数据库实例提供文件范围映射信息。
3、Oracle RAC环境中的Oracle ASM群集
这里的Oracle ASM提供群集存储池。集群中的每个节点都有一个Oracle ASM实例,为多个Oracle RAC或单个实例数据库提供服务。所有数据库都是合并的,并且共享同两个Oracle ASM磁盘组。
4、多个单实例Oracle数据库共享集群存储池
如果要在多个节点之间共享磁盘组,必须在所有节点上安装Oracle Clusterware,而不管是否在节点上安装Oracle RAC。单独节点上的Oracle ASM实例不需要是Oracle ASM集群的一部分。但是,如果Oracle ASM实例不是Oracle ASM集群的一部分,则它们无法相互通信。不属于Oracle ASM群集的多个节点不能共享磁盘组。
Oracle ASM Disk Groups
A disk group consists of multiple disks and is the fundamental object that Oracle ASM manages.
Each disk group contains the metadata that is required for the management of space in the disk group. Disk group components include disks, files, and allocation units.
ASM磁盘组文件是从磁盘组分配的。任何Oracle ASM文件都完全包含在单个磁盘组中。但是,磁盘组可能包含属于多个数据库的文件。
一般是用asmca和命令行来配置asm磁盘组,之前有介绍过,篇幅有限,这里过滤下~
Mirroring and Failure Groups
Mirroring protects data integrity by storing copies of data on multiple disks.
镜像通过在多个磁盘上存储数据副本来保护数据完整性。
The redundancy level controls how many disk failures are tolerated without dismounting the disk group or losing data. The disk group type determines the mirroring levels with which Oracle creates files in a disk group.
主要有以下三个冗余级别:
- Normal for 2-way mirroring
- High for 3-way mirroring
- External to not use Oracle ASM mirroring, such as when you configure hardware RAID for redundancy
1、 外部冗余(external redundancy):
表示Oracle不帮你管理镜像,功能由外部存储系统实现,比如通过RAID技术;有效磁盘空间是所有磁盘设备空间的大小之和。
2、 默认冗余(normal redundancy):
表示Oracle提供2份镜像来保护数据(镜像数据一次),有效磁盘空间是所有磁盘设备大小之和的1/2 (使用最多)。
3、 高度冗余(high redundancy):
表示Oracle提供3份镜像来保护数据(镜像数据两次),以提高性能和数据的安全,最少需要三块磁盘(三个failure group);
有效磁盘空间是所有磁盘设备大小之和的1/3,虽然冗余级别高了,但是硬件的代价也最高。
Oracle ASM Disks
Oracle ASM disks are the storage devices that are provisioned to Oracle ASM disk groups. ASM磁盘组成ASM磁盘组。
Oracle ASM磁盘包括:
1)存储阵列中的磁盘或分区
2)整个磁盘或磁盘分区
3)逻辑卷
4)网络附加文件(NFS)
Oracle ASM将文件按比例分布在磁盘组中的所有磁盘上。这种分配模式将每个磁盘保持在相同的容量级别,并确保磁盘组中的所有磁盘具有相同的I/O负载。由于Oracle ASM在磁盘组中的所有磁盘之间进行负载平衡,不同的Oracle ASM磁盘不应共享同一个物理驱动器。
Oracle ASM Allocation Units和ASM Extents
1、oracle ASM AU
An allocation unit is the fundamental unit of allocation within a disk group. A file extent consists of one or more allocation units. An Oracle ASM file consists of one or more file extents.
每个Oracle ASM磁盘都被划分为分配单元(AU)。
创建磁盘组时,可以使用au_size磁盘组属性设置Oracle ASM分配单元大小。AU一般可以是1、2、4、8、16、32或64 MB,具体取决于特定的磁盘组兼容性级别。如果不指定AU的大小,默认值是1MB(Exadata下为4MB)。较大的AU大小通常为使用大型顺序读取的数据仓库应用程序提供性能优势。
2、Oracle ASM Extents
一个或多个AU组成一个extent,一个或多个ASM extent组成了一个ASM的文件,因此一个ASM文件逻辑上是由extent组成的。
我们需要区分物理extent和虚拟extent,一个虚拟extent或者说extent set,在外部冗余的磁盘组中,是由一个物理extent组成,在normal冗余的磁盘组中,是由至少2个物理extent组成,在一个high冗余的磁盘组中,由至少3个物理extent组成。
在ASM 11.1版本之前,extent的大小是固定的,在ASM 11.1版本之后,出现了可变extent,可变extent的出现是为了更好的支持大数据文件,减少对ASM和数据库实例的SGA要求、提升创建文件和打开文件等操作的性能,初始化的extent大小等于磁盘组的AU_SIZE设定值,随着一个文件分配的extent越来越多,extent的size会按照4或16倍的AU_SIZE增大。这个特性在文件新建或者resize的时候自动起作用,当然ASM磁盘组的属性值COMPATIBLE.ASM 和COMPATIBLE.RDBMS要设置为大于等于11.1。
3、Oracle ASM Extent与AU的关系
这里前八个扩展数据块(0到7)分布在四个Oracle ASM磁盘上,大小等于AU。在第一个20000个范围集之后,接下来的20000个范围集(20000-39999)的范围大小将变为4*au。这显示为用范围集编号20000到20007标记的粗体矩形,依此类推。Oracle ASM扩展盘区的下一个增量是16*au。
一个文件的extent大小变化规律遵循如下方式:
一个文件的前20000个extent set,extent的size等于磁盘组的AU_SIZE的设定值。
接下来的20000个extent set,extent的size等于磁盘组的AU_SIZE*4。
如果一个文件的总extent set数多于40000个,那么后面所有的extent的size等于磁盘组的AU_SIZE*16。
总结:
ACFS=ASM Cluster File System,其建立于来自ASM的 Volume上,除了与普通文件系统类似,还可以在多个节点间共享。主要有ASM,ADVM,ACFS三个组件,ADVM(ASM Dynamic Volume Manager,可翻译为,ASM动态卷管理器)主要负责将ASM空间输出到OS的,也就是用来实现Volume的。大家可以跟lvm对照着理解:
asm disk -> lvm pv asm dg -> lvm vg asm advm acfs -> lv+fs
后面会分享更多关于DBA方面的内容,感兴趣的朋友可以关注下!!
相关推荐
- Linux两种光驱自动挂载的方法
-
环境:CentOS6.4西昆云服务器方式一修改fstab文件/etc/fstab是系统保存文件系统信息?静态文件,每一行描述一个文件系统;系统每次启动会读取此文件信息以确定需要挂载哪些文件系统。参...
- linux系统运维,挂载和分区概念太难?在虚机下操作一次全掌握
-
虚拟机的好处就是可以模拟和学习生产环境的一切操作,假如我们还不熟悉磁盘操作,那先在虚机环境下多操作几次。这次来练习下硬盘扩容操作。虚拟机环境:centos8vm11linux设备命名规则在linux中...
- Linux 挂载 NFS 外部存储 (mount 和 /etc/fstab)
-
mount:手工挂载,下次重启需再重新挂载,操作命令:mount-tnfs-ooptionsserver:/remote/export/local/directory上面命令中,本地目录...
- 在Linux中如何设置自动挂载特定文件系统(示例)
-
Linux...
- Linux环境中的绑定挂载(bind mount)
-
简介:Linux中的mount命令是一个特殊的指令,主要用于挂载文件目录。而绑定挂载(bindmount)命令更为特别。mount的bind选项将第一个目录克隆到第二个。一个目录中的改变将会在...
- Linux挂载CIFS共享 临时挂载 1. 首先
-
如何解决服务器存储空间不足的问题?大家好,欢迎回来。在上一期视频中,我为大家介绍了如何利用Linux挂载来扩容服务器存储空间。这一期视频,我将以Linux为例,教大家如何进行扩容。群辉使用的是Linu...
- Linux 硬盘挂载(服务器重启自动挂载)
-
1、先查看目前机器上有几块硬盘,及已挂载磁盘:fdisk-l能够查看到当前主机上已连接上的磁盘,以及已经分割的磁盘分区。(下面以/dev/vdb磁盘进行分区、挂载为例,挂载点设置为/data)df...
- linux 挂载磁盘
-
在Linux中挂载硬盘的步骤如下:...
- 笨小猪教您Linux磁盘挂载
-
本教程针对Linux系统比较熟悉或者想学习Linux基础的用户朋友,本教程操作起来比较傻瓜式,跟着步骤就会操作,本文使用的工具是XShell同时多多注意空格(文中会有提示)。【问答】什么是磁盘挂载?答...
- Linux 磁盘挂载和docker安装命令
-
本篇给大家介绍Linux磁盘挂载和docker安装的相关内容,Linux服务器的操作是一个手熟的过程,一些不常用的命令隔断时间就忘记了,熟话说好记性不如烂笔头,还需在平时的工作中多练习记录。...
- Linux设置开机自动挂载分区
-
有时候,我们在安装完Linux系统之后,可能在使用过程中添加硬盘或者分区进行使用,这时候就需要手动把磁盘分区挂载到某个路径,但是开机之后就会消失,需要重新挂载,非常麻烦,那么我们应该如何设置开机自动挂...
- 在linux挂载一个新硬盘的完整步骤
-
以下是在Linux中挂载新原始磁盘的完整步骤,包括分区、创建文件系统以及使用UUID在/etc/fstab中启动时挂载磁盘:将新的原始磁盘连接到Linux系统并打开电源。运行以下命令,...
- Linux系统如何挂载exFAT分区
-
简介:Linux系统中不能像Windows系统那样自动识别加载新设备,需要手动识别,手动加载。Linux中一切皆文件。文件通过一个很大的文件树来组织,文件树的根目录是:/,从根目开始录逐级展开。这些文...
- Linux系统挂载硬盘
-
fdisk-l查看可挂载的磁盘都有哪些df-h查看已经挂载的磁盘...
- WSL2发布,如何在Win10中挂载Linux文件系统
-
WSL2是最新版本的架构,它为Windows子系统提供支持,使其能够在Windows上运行ELF64Linux二进制文件。通过最近的更新,它允许使用Linux文件系统访问存储在硬盘中的文件。如果你...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- 关闭防火墙linux (53)