AFD功能是从12c开始提供的ASM磁盘管理模块,其功能强大但是却不适合用来在12c + GI架构下安装12.1以前的DB。
11g DB并不支持对AFD管理的ASM磁盘进行读写,如果DBCA安装实例的话,会hang住,OS层面会有IO报错(/var/log/message)记录如下:
oracle[3038361] oracleafd:19:1616:Failed to map IO buffer in kernel memory
oracle[3038361] oracleafd:14:1374:Failed to map IO buffer in kernel memory: [0]
如果已经在安装GI时,已经选择配置AFD,那么,不必卸载整个GI,只需要卸载AFD模块,启用ASMLIB或者UDEV完成磁盘绑定即可。以UDEV为例,步骤如下:
1.root用户下,各节点分别关闭crs服务(ALL NODE)
# <GI_HOME>/bin/crsctl stop crs -f
2.不论是否配置了ACFS,都需要在个节点停用ACFS内核模块(ALL NODE)
# <GI_HOME>/bin/acfsload stop
3.卸载AFD内核模块(ALL NODE)
# <GI_HOME>/bin/asmcmd afd_deconfigure
4.启用ACFS内核模块(ALL NODE)
# <GI_HOME>/bin/acfsload start
5.配置udev规则文件(ALL NODE)
vi /etc/udev/rule.d/99-asm-disk.rule
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360a980003830367a6724485479454c77",ACTION=="add|change",OWNER:="grid",GROUP:="asmadmin", MODE:="660",SYMLINK+="asm-ocr01";
# udevadm control --reload-rules
# udevadm trigger --type=devices --action=change
6.启动CRS服务(ALL NODE)
# <GI_HOME>/bin/crsctl start crs
7. GRID用户下,更新ASM磁盘的发现路径信息
$ asmcmd dsget
$ asmcmd dsset '/dev/mapper/*'
参考文献:
MOS: DBCA Hangs While Creating Pre-12.1 Database in 12.1.0.2/12.2 Grid Infrastructure Environment and Using ASMFD for ASM Storage (Doc ID 2323587.1)
本文详细介绍了在12c Grid Infrastructure环境下使用ASM Fast Device (AFD) 与11g数据库不兼容的问题,包括在安装过程中导致的挂起现象及OS层面的IO错误。提供了通过卸载AFD模块并启用UDEV来完成磁盘绑定的具体步骤,以确保11g DB在12c+GI架构下的正常运行。
2486

被折叠的 条评论
为什么被折叠?



