本文是对原文《几个关于Oracle 11g ASM的问题》的扩展升级版,重点介绍Oracle 19c和23c/23ai版本中ASM的重大新特性。对于从11g时代一路走来的老DBA来说,这些新特性可能还比较陌生,本文将详细介绍这些变化,帮助读者快速掌握现代ASM的核心能力。

一、从11g到19c/23c:ASM架构演进概览

Oracle ASM自10g引入以来,经历了多次重大架构升级:

版本 里程碑特性
10g ASM首次引入,提供磁盘组管理、条带化和镜像
11gR2 引入ACFS(ASM集群文件系统)和ADVM(ASM动态卷管理器)
12cR1 Flex ASM架构,支持大规模集群环境
12cR2 Flex Disk Group、File Group、Quota Group,面向数据库的存储管理
18c 无限制挂载转换Normal/High到Flex磁盘组
19c Parity Protection、Multiple ASMB、CONTENT.CHECK属性
21c Double Parity Protection(已回移至19c RU)
23ai ASMFD废弃、混合存储管理增强

二、OCR和Voting Disk存储位置的变迁

2.1 11g时代的限制(回顾)

在11gR2 Grid Infrastructure全新安装时,不再支持将OCR和Voting Disk直接放置在裸设备上。当时的支持选项包括:

  • Oracle ASM
  • 支持的网络附加存储(NAS)
  • 集群文件系统

虽然可以通过后续手段将OCR和Voting Disk移动到裸设备,但Oracle强烈不建议这样做。

2.2 19c的重大变化:共享文件系统支持恢复

从Oracle Grid Infrastructure 19c(19.3)开始,一个重要的变化是:对于Oracle Standalone Clusters,现在可以再次将OCR和Voting Disk文件直接放置在共享文件系统上

这一变化撤销了12cR2中宣布的废弃声明。但需要注意的是,对于Oracle Domain Services Clusters,仍然要求将OCR和Voting文件放置在Oracle ASM中。

-- 19c支持的OCR/Voting Disk存储位置
+------------------------+------------------+------------------+
| 集群类型               | ASM              | 共享文件系统      |
+------------------------+------------------+------------------+
| Standalone Cluster     | 支持             | 支持(19.3+)    |
| Domain Services Cluster| 支持(必须)     | 不支持           |
+------------------------+------------------+------------------+

2.3 现代OCR/Voting Disk管理命令

19c中的OCR和Voting Disk管理命令相比11g有所增强:

# 查看OCR配置
ocrcheck

# 查看Voting Disk位置
crsctl query css votedisk

# 添加OCR位置(需root权限)
ocrconfig -add +DISKGROUP

# 替换OCR位置
ocrconfig -replace ocr +NEWDISKGROUP

# 添加Voting Disk
crsctl add css votedisk +DISKGROUP

# 删除Voting Disk
crsctl delete css votedisk +DISKGROUP

# 移动Voting Disk(需要先停止CRS)
crsctl stop crs
crsctl replace votedisk +NEWDISKGROUP
crsctl start crs

三、Oracle 19c ASM核心新特性详解

3.1 Flex Disk Group与面向数据库的存储管理

Flex Disk Group是12cR2引入的革命性特性,在19c中得到了进一步增强。对于11g时代的DBA来说,这是一个全新的概念。

3.1.1 传统磁盘组 vs Flex磁盘组

传统磁盘组(11g时代)的限制:

  • 冗余级别在创建时固定,无法更改
  • 整个磁盘组使用统一的冗余策略
  • 无法针对单个数据库设置存储配额
  • 所有数据库文件混合存储,难以管理

Flex磁盘组的优势:

  • 支持File Group级别的冗余设置
  • 可以动态修改冗余级别
  • 支持Quota Group进行空间配额管理
  • 支持面向PDB的存储管理
  • 支持Parity Protection(奇偶校验保护)

3.1.2 创建和转换Flex磁盘组

-- 创建新的Flex磁盘组
CREATE DISKGROUP flex_dg FLEX REDUNDANCY
  DISK '/devices/disk1', '/devices/disk2', '/devices/disk3',
       '/devices/disk4', '/devices/disk5'
  ATTRIBUTE 'au_size'='4M',
            'compatible.asm' = '19.0',
            'compatible.rdbms' = '19.0',
            'compatible.advm' = '19.0';

-- 将现有Normal/High冗余磁盘组转换为Flex磁盘组
-- 注意:EXTERNAL冗余不能转换
ALTER DISKGROUP normaldg CONVERT REDUNDANCY TO FLEX;

-- 验证转换结果
SELECT name, type FROM V$ASM_DISKGROUP WHERE name = 'NORMALDG';

-- 输出示例:
-- NAME          TYPE
-- ------------- ------
-- NORMALDG      FLEX

转换要求:

  • NORMAL冗余磁盘组需要至少3个故障组
  • HIGH冗余磁盘组需要至少5个故障组
  • 从18c开始,不再需要RESTRICTED MOUNT即可转换
  • 需要先完成VAM(Virtual Allocation Metadata)迁移

3.1.3 File Group管理

File Group是Flex磁盘组的核心概念,允许按数据库、CDB或PDB组织文件:

-- 为PDB创建File Group并关联Quota Group
ALTER DISKGROUP DiskGroup_1 
  ADD FILEGROUP FileGroup_PDB1 
  DATABASE PDB1 
  SET 'quota_group' = 'QuotaGroup_QGRP1';

ALTER DISKGROUP DiskGroup_1 
  ADD FILEGROUP FileGroup_PDB2 
  DATABASE PDB2 
  SET 'quota_group' = 'QuotaGroup_QGRP2';

-- 修改File Group的冗余属性
ALTER DISKGROUP DG1 
  MODIFY FILEGROUP FileGroup_PDB1 
  SET 'datafile.redundancy' = 'HIGH';

-- 查看File Group信息
SELECT * FROM V$ASM_FILEGROUP;

-- 使用ASMCMD查看File Group
ASMCMD> lsfg -G DATA --filegroup

-- 删除File Group(包括内容)
ALTER DISKGROUP DG1 
  DROP FILEGROUP FileGroup_PDB1 CASCADE;

3.2 Parity Protection(奇偶校验保护)- 19c重磅特性

这是19c中最重要的ASM新特性之一,类似于RAID 5/6的奇偶校验保护,可以显著降低存储开销。

3.2.1 设计原理

传统的ASM镜像会产生100%(双向镜像)或200%(三向镜像)的存储开销。对于归档日志和备份集这类一次写入(write-once)的文件,Parity Protection可以将开销降低到:

  • 3-4个故障组:50%存储开销(每个奇偶校验扩展集有2个数据扩展)
  • 5个或更多故障组:25%存储开销(每个奇偶校验扩展集有4个数据扩展)

3.2.2 使用限制

重要提示:Parity Protection仅支持一次写入的文件类型:

  • ✅ 归档日志(Archive Logs)
  • ✅ 备份集(Backup Sets)
  • ❌ 数据文件(Datafiles)- 不支持
  • ❌ 联机重做日志(Online Redo Logs)- 不支持
  • ❌ 其他读写文件 - 不支持

3.2.3 配置Parity Protection

-- 前提条件:
-- 1. 磁盘组必须是FLEX类型
-- 2. 至少3个regular(非quorum)故障组
-- 3. compatible.asm >= 19.0

-- 修改File Group启用Parity Protection
ALTER DISKGROUP ARC 
  MODIFY FILEGROUP FileGroup_PDB1 
  SET 'archivelog.redundancy' = 'PARITY';

-- 为备份集启用Parity Protection
ALTER DISKGROUP FRA 
  MODIFY FILEGROUP FileGroup_DB1 
  SET 'backupset.redundancy' = 'PARITY';

-- 查看冗余设置
SELECT fg.name, fg.redundancy, fg.property_name, fg.property_value
FROM V$ASM_FILEGROUP_PROPERTY fg
WHERE fg.property_name LIKE '%redundancy%';

注意事项:

  • 修改冗余设置只影响新创建的文件
  • 已存在的文件保持原有冗余级别
  • 设置为PARITY或DOUBLE的文件永远不能更改冗余

3.2.4 Double Parity Protection(21c/19c RU)

Oracle 21c引入了Double Parity Protection(双奇偶校验),提供类似于三向镜像(HIGH)的保护级别,同时保持较低的存储开销。这一特性已回移到19c的最新Release Update中。

-- 启用Double Parity Protection(需要19c最新RU或21c+)
ALTER DISKGROUP ARC 
  MODIFY FILEGROUP FileGroup_PDB1 
  SET 'archivelog.redundancy' = 'DOUBLE';

-- 冗余级别对比
+-------------+------------------+------------------+
| 冗余级别     | 保护能力         | 存储开销         |
+-------------+------------------+------------------+
| UNPROTECTED | 无保护           | 0%              |
| MIRROR      | 单故障容忍       | 100%            |
| HIGH        | 双故障容忍       | 200%            |
| PARITY      | 单故障容忍       | 25-50%          |
| DOUBLE      | 双故障容忍       | 50-75%          |
+-------------+------------------+------------------+

3.3 Multiple ASMB(多ASMB进程)

在Flex ASM架构中,数据库实例通过ASMB后台进程与ASM实例通信。19c引入了Multiple ASMB特性:

场景示例:

  • +ASM1挂载了dg1但没有挂载dg2
  • +ASM2挂载了dg2但没有挂载dg1
  • 数据库需要同时使用dg1和dg2

在19c之前,这种场景会导致问题。19c的Multiple ASMB允许数据库同时连接多个ASM实例(ASMBn),即使某个ASM实例没有挂载所有需要的磁盘组,数据库也能正常访问所有磁盘组。

-- 查看数据库的ASMB进程
SELECT pname, con_id, program FROM V$PROCESS 
WHERE pname LIKE 'ASMB%';

-- 可能的输出
-- PNAME   CON_ID  PROGRAM
-- ------  ------  --------
-- ASMB    0       oracle@host (ASMB)
-- ASMB1   0       oracle@host (ASMB1)
-- ASMB2   0       oracle@host (ASMB2)

3.4 CONTENT.CHECK磁盘组属性

19c引入了CONTENT.CHECK磁盘组属性,用于自动检测和恢复块损坏:

-- 启用CONTENT.CHECK
ALTER DISKGROUP data SET ATTRIBUTE 'content.check' = 'TRUE';

-- 查看属性设置
SELECT name, value FROM V$ASM_ATTRIBUTE 
WHERE group_number = (SELECT group_number FROM V$ASM_DISKGROUP WHERE name = 'DATA')
AND name = 'content.check';

-- 相关属性
-- content.check        : 启用块损坏检测
-- content_hardcheck.enabled : 启用硬检查

3.5 新增ASMCMD命令

19c增加了多个实用的ASMCMD命令:

# 1. mvfile - 在同一磁盘组内移动文件到指定File Group
ASMCMD> mvfile +DATA/ORCL/datafile.dbf +DATA.FILEGROUP_PDB1

# 2. setsparseparent - 设置稀疏子文件的父文件
ASMCMD> setsparseparent +DATA/sparse_child.dbf +DATA/parent.dbf

# 3. pwcreate - 密码选项现在是可选的
ASMCMD> pwcreate +DATA/orapwasm
# 系统会提示输入密码,而不是在命令行暴露

# 4. lsfg - 列出File Group信息
ASMCMD> lsfg -G DATA --filegroup FG1

# 5. chfg/chqg - 修改File Group或Quota Group
ASMCMD> chfg -G DATA --filegroup FG1 --property 'redundancy=HIGH'

3.6 SRVCTL增强

19c增强了SRVCTL对ASM网络资源的管理能力:

# 管理ASM网络资源
srvctl config asm
srvctl status asm
srvctl modify asm -listener LISTENER_ASM

# 配置ASM监听器
srvctl add listener -l LISTENER_ASM -p TCP:1521 -o $ORACLE_HOME

# 管理ASM实例
srvctl start asm -node node1
srvctl stop asm -node node1 -stopoption immediate
srvctl relocate asm -node node2

四、Oracle ASM Filter Driver (ASMFD) - 替代ASMLIB

对于11g时代使用ASMLIB的用户,ASMFD是一个重要的变化。

4.1 ASMFD vs ASMLIB对比

特性 ASMLIB(11g常用) ASMFD(12c+推荐)
内核模块 需要额外安装 随Grid Infrastructure安装
磁盘发现 通过oracleasm命令 通过asmcmd afd_*命令
I/O过滤 过滤非Oracle I/O,防止误写
内核版本依赖 需要匹配的驱动 自动适配
设备持久性 需要配合udev 内置持久性
维护复杂度 较高 较低

4.2 ASMFD配置步骤

# 1. 检查ASMFD支持状态(应用RU后)
$ORACLE_HOME/bin/afddriverstate supported
# 输出:AFD-9200: Supported

# 2. 验证ASMFD分发介质
$ORACLE_HOME/bin/afdroot version_check
# 输出:AFD-616: Valid AFD distribution media detected

# 3. 在安装前标记磁盘(需要root权限)
export ORACLE_HOME=/u01/app/19c/grid
export ORACLE_BASE=/tmp

# 标记磁盘用于ASMFD
asmcmd afd_label 'DATA1' '/dev/sdb' --init
asmcmd afd_label 'DATA2' '/dev/sdc' --init
asmcmd afd_label 'FRA1' '/dev/sdd' --init

# 4. 验证标记
asmcmd afd_lslbl '/dev/sd*'
# 输出示例:
# Label     Duplicate  Path
# ========= ========== ==========
# DATA1                /dev/sdb
# DATA2                /dev/sdc
# FRA1                 /dev/sdd

# 5. 查看ASMFD磁盘目录
ls -la /dev/oracleafd/disks/
# 输出示例:
# -rwxrwx--- 1 grid oinstall 35 DATA1
# -rwxrwx--- 1 grid oinstall 35 DATA2
# -rwxrwx--- 1 grid oinstall 35 FRA1

# 6. 安装后添加新磁盘(不需要--init)
asmcmd afd_label 'DATA3' '/dev/sde'

# 7. 删除磁盘标记
asmcmd afd_unlabel 'DATA3' -f

4.3 从ASMLIB迁移到ASMFD

# 1. 列出当前ASMLIB管理的磁盘
/usr/sbin/oracleasm listdisks

# 2. 停止数据库和ASM实例
srvctl stop database -d ORCL
srvctl stop asm -node `hostname`

# 3. 卸载ASMLIB配置
/usr/sbin/oracleasm deletedisk DATA1
/usr/sbin/oracleasm deletedisk DATA2
# ... 对所有磁盘重复

# 4. 停用ASMLIB
/usr/sbin/oracleasm disable
/usr/sbin/oracleasm exit

# 5. 配置ASMFD
asmcmd afd_label 'DATA1' '/dev/sdb'
asmcmd afd_label 'DATA2' '/dev/sdc'
# ... 对所有磁盘重复

# 6. 重新启动ASM和数据库
srvctl start asm -node `hostname`
srvctl start database -d ORCL

# 7. 验证磁盘已被ASMFD管理
asmcmd lsdsk -t -G DATA
# 输出中应显示AFD:前缀
# AFD:DATA1
# AFD:DATA2

4.4 重要提示:23ai中ASMFD废弃

注意:从Oracle Database 23ai开始,ASMFD已被废弃(desupported)。从19c升级到23ai时,需要确保ASM设备由asmdba组拥有,并改用手动设备持久性配置(如udev规则)。

# 23ai升级前的准备工作
# 1. 解除ASMFD配置
asmcmd afd_deconfigure

# 2. 配置udev规则确保设备持久性
# 创建 /etc/udev/rules.d/99-oracle-asm.rules
# KERNEL=="sd*", SUBSYSTEM=="block", ENV{ID_SERIAL}=="SATA_VBOX_HARDDISK_VB*", OWNER="grid", GROUP="asmdba", MODE="0660"

# 3. 重新加载udev规则
udevadm control --reload-rules
udevadm trigger

# 4. 验证设备权限
ls -la /dev/sd*

五、ACFS(ASM集群文件系统)增强

5.1 19c ACFS新特性

19c对ACFS进行了多项增强:

5.1.1 增强的诊断命令

# 显示任意时刻打开的ACFS文件
acfsutil info ftrace /mnt/acfs1

# 显示锁争用统计信息(集群范围诊断)
acfsutil lockstats /mnt/acfs1

# 快速扫描相关元数据(-g选项)
acfsutil meta -g /mnt/acfs1

# 显示元数据诊断信息(-m选项)
acfsutil info file -m /mnt/acfs1/datafile.dbf

# AIX平台支持收缩文件系统
acfsutil size -s 100G /mnt/acfs1

5.1.2 复制增强

# 非root用户可以执行大多数repl命令(除了acfsutil repl info -c -u)

# 远程终止复制(新的remote关键字)
acfsutil repl terminate standby remote standby-location

# 上述命令会先在主端终止复制处理,然后再终止备端

5.2 ACFS与Flex ASM架构

在Flex ASM架构中,ACFS通过ASM Proxy实例访问磁盘组:

# 查看ASM Proxy进程
ps -ef | grep 'apx_'
# 输出示例:
# oracle  10924  1  0 17:23 ?  00:00:00 apx_pmon_+APX1
# oracle  10926  1  0 17:23 ?  00:00:01 apx_psp0_+APX1
# oracle  11052  1  1 17:23 ?  00:02:03 apx_vktm_+APX1

# 查看ACFS挂载状态
df -h /u01/acfs
# 或
acfsutil info fs /u01/acfs

# 在Flex ASM环境中,如果本地ASM实例故障:
# - ACFS连接会自动重定向到集群中其他存活的ASM实例
# - 通过ASM Proxy和ASM Network实现无缝切换

5.3 创建和管理ACFS文件系统

# 1. 创建ADVM卷
# 使用ASMCMD
asmcmd volcreate -G ACFSDG -s 100G DATAVOL1

# 或使用SQL
ALTER DISKGROUP ACFSDG ADD VOLUME datavol1 SIZE 100G;

# 2. 查看卷信息
asmcmd volinfo -G ACFSDG datavol1
# 输出:
# Diskgroup Name: ACFSDG
# Volume Name: DATAVOL1
# Volume Device: /dev/asm/datavol1-123
# State: ENABLED
# Size (MB): 102400

# 3. 创建ACFS文件系统
/sbin/mkfs -t acfs /dev/asm/datavol1-123

# 4. 创建挂载点并挂载
mkdir -p /mnt/acfs/data
mount -t acfs /dev/asm/datavol1-123 /mnt/acfs/data

# 5. 注册到ACFS Registry(自动挂载)
acfsutil registry -a /dev/asm/datavol1-123 /mnt/acfs/data

# 6. 查看注册的文件系统
acfsutil registry -l

# 7. 调整ACFS大小
acfsutil size +50G /mnt/acfs/data
# 或缩小(需要足够的可用空间)
acfsutil size -s 80G /mnt/acfs/data

六、Grid Infrastructure 19c其他重要特性

6.1 零停机时间补丁(Zero-Downtime Patching)

19c引入了零停机时间Grid Infrastructure补丁功能,允许在不中断服务的情况下应用补丁。

6.2 干运行升级验证

# 使用干运行模式检查升级准备情况
./gridSetup.sh -executeConfigTools -responseFile /path/to/response.rsp -dryRun

# 干运行模式会执行所有系统准备检查
# 但不会实际执行升级
# 帮助提前发现潜在问题

6.3 GIMR可选安装

从19c开始,Grid Infrastructure Management Repository (GIMR)对于Standalone Cluster是可选的,这简化了安装过程并减少了资源需求。

6.4 安全集群通信

19c自动启用安全集群通信(Secure Cluster Communication),包括:

  • 消息摘要机制
  • 防模糊攻击保护
  • TLS加密保护集群互连的隐私和数据完整性

这些安全增强在19c新安装或升级时自动启用,无需额外配置。

七、Oracle 23ai/23c ASM变化

7.1 ASMFD废弃

如前所述,23ai废弃了ASMFD。升级时需要:

  1. 确保ASM设备由asmdba组拥有
  2. 配置手动设备持久性(如udev规则)
  3. 解除ASMFD配置后再升级

7.2 混合存储管理

23ai增强了对混合存储配置的支持,特别是在Exadata环境中,可以在同一Exadata基础架构中支持不同的存储管理方式(ASM和Exascale)。

7.3 自动化增强

23ai继续增强ASM的自动化能力,包括:

  • 更智能的混合工作负载处理
  • 改进的云环境和混合环境支持
  • 减少DBA手动干预的需求

八、磁盘路径问题的现代解决方案

回顾原文中提到的磁盘路径问题,这在现代版本中有了更好的解决方案。

8.1 11g时代的情况(回顾)

ASM通过读取磁盘头部来识别磁盘内容。在安装时,磁盘路径名需要在所有节点保持一致。安装完成后,即使路径名改变也不会影响ASM使用。

AIX平台的特殊注意事项:如果直接使用HDISK形式的LUN,该HDISK不应具有PVID。如果使用裸逻辑卷,所建VG应该是scaleable volume group。

8.2 现代解决方案

8.2.1 使用ASMFD(19c推荐,23ai前)

# ASMFD自动处理设备持久性
# 标记后,设备通过AFD:标签访问,而非物理路径
asmcmd afd_label 'DATA1' '/dev/sdb' --init

# 磁盘组创建时使用标签
CREATE DISKGROUP data DISK 'AFD:DATA1', 'AFD:DATA2';

8.2.2 使用udev规则(推荐用于23ai)

# /etc/udev/rules.d/99-oracle-asm.rules

# 基于SCSI ID的规则
KERNEL=="sd*", SUBSYSTEM=="block", ENV{ID_SERIAL}=="36000c29*", \
  SYMLINK+="asm/disk1", OWNER="grid", GROUP="asmdba", MODE="0660"

# 基于WWN的规则(更可靠)
KERNEL=="sd*", SUBSYSTEM=="block", ENV{ID_WWN}=="0x5000c5000xxxx*", \
  SYMLINK+="asm/disk2", OWNER="grid", GROUP="asmdba", MODE="0660"

# 应用规则
udevadm control --reload-rules
udevadm trigger

8.2.3 使用Multipath

# /etc/multipath.conf
multipaths {
    multipath {
        wwid 3624a937050c939582b0f46c0003b69e4
        alias dg_rac_data1
    }
    multipath {
        wwid 3624a937050c939582b0f46c0003b69e5
        alias dg_rac_data2
    }
}

# 然后使用别名创建磁盘组
CREATE DISKGROUP data DISK '/dev/mapper/dg_rac_data*';

九、ASM性能和监控视图

19c/23c提供了丰富的ASM监控视图:

-- 磁盘组信息
SELECT group_number, name, type, state, total_mb, free_mb 
FROM V$ASM_DISKGROUP;

-- 磁盘详细信息
SELECT group_number, disk_number, name, path, mount_status, 
       total_mb, free_mb, read_errs, write_errs
FROM V$ASM_DISK;

-- 文件信息
SELECT group_number, file_number, type, redundancy, 
       bytes, space, creation_date
FROM V$ASM_FILE;

-- File Group信息
SELECT group_number, filegroup_number, name, 
       client_type, client_name, incarnation
FROM V$ASM_FILEGROUP;

-- Quota Group信息
SELECT group_number, quotagroup_number, name, 
       quota_limit_mb, used_quota_mb
FROM V$ASM_QUOTAGROUP;

-- 磁盘组属性
SELECT group_number, name, value 
FROM V$ASM_ATTRIBUTE
WHERE name IN ('compatible.asm', 'compatible.rdbms', 
               'content.check', 'thin_provisioned');

-- ASM操作历史
SELECT group_number, operation, state, power, actual, 
       est_minutes, est_work
FROM V$ASM_OPERATION;

-- 客户端连接
SELECT group_number, instance_name, db_name, status
FROM V$ASM_CLIENT;

十、最佳实践总结

10.1 从11g升级的建议

  1. 评估当前配置:记录现有磁盘组、冗余级别、OCR/Voting位置
  2. 规划ASMFD迁移(如果使用ASMLIB)或直接规划udev(如果计划升级到23ai)
  3. 考虑Flex磁盘组转换:评估是否需要File Group级别的管理
  4. 规划Parity Protection:评估归档日志和备份集的存储节省潜力
  5. 测试升级路径:使用干运行模式验证升级准备情况

10.2 磁盘组设计建议

  • 新建环境优先使用Flex磁盘组
  • 设置compatible.asm为19.0以启用所有19c特性
  • 为归档和备份使用Parity Protection以节省存储
  • 利用Quota Group管理多租户环境的存储配额
  • 启用CONTENT.CHECK提高数据可靠性

10.3 ACFS使用建议

  • 使用ACFS存储Oracle Home二进制文件
  • 利用ACFS快照进行测试/开发环境克隆
  • 注册ACFS文件系统以实现自动挂载
  • 在Flex ASM环境中理解ASM Proxy的作用

总结

从Oracle 11g到19c/23c,ASM经历了重大的架构演进。对于老用户来说,最需要关注的变化包括:

  • Flex磁盘组:提供了前所未有的存储管理灵活性
  • Parity Protection:显著降低归档和备份的存储开销
  • ASMFD:简化了磁盘管理(但注意23ai已废弃)
  • Multiple ASMB:提高了Flex ASM环境的可用性
  • OCR/Voting共享文件系统支持恢复:为Standalone Cluster提供了更多选择

建议DBA在规划升级时,充分评估这些新特性的适用性,制定合理的迁移策略,以充分利用现代ASM的强大能力。