暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

关于 Oracle ACFS 相关知识的简单学习

JiekeXu之路 2020-06-15
2706

作者 | JiekeXu

来源 | JiekeXu之路(ID: JiekeXu_IT)

转载请联系授权 | (微信ID:xxq1426321293)

大家好,我是 JiekeXu,很高兴又和大家见面了,今天分享下 关于 Oracle ACFS 相关知识的简单学习。本文首发于微信公众号【JiekeXu之路】,欢迎点击上方蓝字关注我吧!


前  言


前些日子,由于备考 OCM ,一直没有时间写点东西,希望各位读者朋友们海涵。六一考完试后又狠狠的加了两周班便拖到了现在,今天难得有时间,便说说关于考试时创建ACFS 文件系统时由于写错挂载点名卸载时无法卸载的问题,以及拓展到 ADVM 和 ACFS 快照,Rman 备份到 ASM 存储。

 

 


ACFS:Oracle Automatic Storage Management Cluster File System (OracleACFS)Oracle 自动存储管理集群文件系统,是 Oracle 自 11.2 出现的一种磁盘管理方式。

 

Oracle 自动存储管理集群文件系统(OracleACFS)是一种多平台、可伸缩的文件系统和存储管理技术,扩展了 Oracle 自动存储管理(Oracle ASM:Oracle Automatic Storage Management)功能,支持在 Oracle 数据库之外维护客户文件。Oracle ACFS 支持许多数据库和应用程序文件,包括可执行文件、数据库跟踪文件、数据库告警日志、应用程序报告、二进制文件和配置文件。其他支持的文件是视频、音频、文本、图像、工程图纸和其他通用应用程序文件数据。

 

 

如上图所示,ACFS 使用 ASM 的动态卷管理 ADVM 文件,数据库文件存放于 ASM,非数据库文件首选存放于 ACFS 文件系统,ACFS 不支持任何可以直接存储在 Oracle ASM 中的文件类型,除非在文档中明确说明;从Oracle Automatic Storage Management 11g Release2(11.2.0.3)开始,Oracle ACFS 支持 RMAN备份(backupingfile类型)、归档日志(ARCHIVELOG 文件类型)和数据泵转储集(DUMPSET 文件类型)。注意,这些文件不支持 Oracle ACFS 快照;Oracle ACFS 不支持 Oracle 集群注册表(OCR)和投票文件(voting files),也不支持 GI 家目录文件;Oracle ACFS 功能要求将 ASM 和 ADV M的磁盘组兼容性属性设置为11.2 或更高。



关于 ACFS 官方文档链接: 


https://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfilesystem.htm#OSTMG30000

 

Oracle ACFS 文件系统是 Oracle ASM 上的一个层,配置了Oracle ASM 存储,如上图 1 所示。Oracle ACFS 利用 Oracle ASM 功能,使:

oracle ACFS 动态文件系统调整

通过直接访问 Oracle ASM 磁盘组存储最大化性能

平衡分布Oracle ACFS 跨 Oracle ASM 磁盘组存储,增加 I/O 并行性

通过 Oracle ASM 镜像保护机制实现数据可靠性


更多详细信息请查看如下官方文档链接:

https://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfilesystem.htm#OSTMG94165

 

ACFS 相关动态视图

 

    V$ASM_ACFS_ENCRYPTION_INFO
    V$ASM_ACFS_SECURITY_INFO
    V$ASM_ACFSSNAPSHOTS
    V$ASM_ACFSVOLUMES
    V$ASM_FILESYSTEM
    V$ASM_VOLUME
    V$ASM_VOLUME_STAT
    复制

     

     

    常用 SQL 语句:


      SELECT SUBSTR(fs_name,1,32) FILESYSTEM, SUBSTR(vol_device,1,20) DEVICE, prepared_status, enabled_status 
      FROM V$ASM_ACFS_SECURITY_INFO;


      SELECT SUBSTR(fs_name,1,32) FILESYSTEM, SUBSTR(vol_device,1,24) DEVICE, SUBSTR(snap_name,1,28) SNAPSHOT, create_time TIME
      FROM V$ASM_ACFSSNAPSHOTS;


      SELECT fs_name, vol_device, primary_vol, total_mb, free_mb
      FROM V$ASM_ACFSVOLUMES;


      SELECT fs_name, available_time, block_size, state, corrupt
      FROM V$ASM_FILESYSTEM;


      SELECT dg.name AS diskgroup, v.volume_name, v.volume_device, v.mountpath
      FROM V$ASM_DISKGROUP dg, V$ASM_VOLUME v
      WHERE dg.group_number = v.group_number and dg.name = 'DATA';


      SELECT dg.name AS diskgroup, v.volume_name, v.bytes_read, v.bytes_written 
      FROM V$ASM_DISKGROUP dg, V$ASM_VOLUME_STAT v 
      WHERE dg.group_number = v.group_number and dg.name = 'DATA';
      复制


      Oracle ADVM


      Oracle ASMDynamic Volume Manager (Oracle ADVM) :ASM 动态卷管理器(ADVM)为客户端提供卷管理服务和标准磁盘设备驱动程序接口。文件系统和其他基于磁盘的应用程序向 Oracle ADVM 卷设备发送 I/O 请求,就像它们向供应商操作系统上的其他存储设备发送请求一样。

       

      Oracle ADVM 扩展了 Oracle ASM 通过提供磁盘驱动程序接口到 Oracle ASM 存储分配作为Oracle ASM 卷文件。可以使用 Oracle ADVM 创建包含文件系统的虚拟磁盘。包含在 Oracle ASM 卷中的这些文件系统能够支持 Oracle数据库文件之外的文件,例如可执行文件、报告文件、跟踪文件、警报日志和其他应用程序数据文件。因为 Oracle ADVM 卷实际上是 Oracle ASM 文件,所以它们需要与 Oracle ASM 文件相同的管理权限。Oracle 自动存储管理集群文件系统(ACFS)是在 Oracle ASM 的基础上通过 Oracle ADVM 接口实现的。随着 Oracle ADVM 的加入,Oracle ASM 成为一个完整的用户数据存储解决方案的数据库和非数据库文件的需要。要将卷添加到 Oracle ASM 磁盘组,磁盘组属性 COMPATIBLE.ASM COMPATIBLE.ADVM  必须设置为“11.2”。卷名最多可为 11 个字母数字字符;破折号是不允许的。第一个字符必须是字母。

       

      下面一起看看相关的操作,11gR2 的有 3 种创建 Oracle ACFS的方法:

       

      (1) ASM ConfigurationAssistant (ASMCA)

      (2) OracleEnterprise Manager (OEM)

      (3) Command Line SQL

       

      我这里使用图形化 asmca,当创建好相关磁盘组后,Volumes 页面单击创建,填写卷名 ADMV,选择磁盘组名 ACFS,填写大小即可创建。

       

       


      接下来开始创建 ACFS 选择最后一个页签“ASM Cluster FileSystems”,点击“create”进行创建。可以使用前面创建的 ADVM 卷或者重新创建卷,我这里选择原有的 ADVM 卷。并创建普通文件系统挂载到 u01/app/oracle/acfs_advm,这里 acfs_advm 目录需要重建,不然会报错,但不知为何会自动在节点 2 创建,如果不指定挂载点目录,如下图所示默认会挂载到 u01/app/grid/acfsmounts/acfs_advm 目录。


       

      当创建完成后,有可能没有mount 需要使用命令 sbin/mount.acfs -o all,在两节点用 root 用户挂载一下。若没有挂载点会报错 ACFS-02014 需要手动创建此目录。



        [root@JiekeXu01 ~]#/sbin/mount.acfs -o all
        mount.acfs:CLSU-00100: Operating System function: open64 failed with error data: 2
        mount.acfs:CLSU-00101: Operating System error message: No such file or directory
        mount.acfs:CLSU-00103: error location: OOF_1
        mount.acfs: CLSU-00104:additional error information: open64 (/u01/app/oracle/acfs_advm)
        mount.acfs:ACFS-02015: Failed to open mount point u01/app/oracle/acfs_advm. Verify themount point exists.
        mount.acfs:ACFS-02014: Mount of u01/app/oracle/acfs_advm failed. Error -1 was returned.
        [root@JiekeXu01 ~]#mkdir -p u01/app/oracle/acfs_advm
        [root@JiekeXu01 ~]#/sbin/mount.acfs -o all
        [root@JiekeXu01 ~]#df -h
        Filesystem Size Used Avail Use% Mounted on
        /dev/sda1 6.8G 3.4G 3.1G 52%
        /dev/sda3 4.9G 3.4G 1.3G 73% stage
        /dev/sda2 15G 13G 1.7G 88% u01
        tmpfs 4.0G 630M 3.4G 16% dev/shm
        /dev/asm/advm-84 2.0G 41M 2.0G 2% u01/app/oracle/acfs_advm
        复制


         

        测试一下 节点一复制文件进去,查看节点二是否能够看到。


          [root@JiekeXu01acfs_advm]# sbin/acfsutil info fs
          /u01/app/oracle/acfs_advm
          ACFS Version: 11.2.0.3.0
          flags: MountPoint,Available
          mount time: Sun Jun 14 15:22:24 2020
          volumes: 1
          total size: 2147483648
          total free: 2004635648
          primary volume: dev/asm/advm-84
          label:
          flags: Primary,Available,ADVM
          on-disk version: 39.0
          allocation unit: 4096
          major, minor: 252, 43009
          size: 2147483648
          free: 2004635648
          ADVM diskgroup ACFS
          ADVM resize increment: 33554432
          ADVM redundancy: unprotected
          ADVM stripe columns: 4
          ADVM stripe width: 131072
          number of snapshots: 0
          snapshot space usage: 0
          replication status: DISABLED
          [root@JiekeXu01acfs_advm]# cp home/oracle/core.5567 ./
          [root@JiekeXu01acfs_advm]# ll
          total 2676
          -rw------- 1 rootroot 2408448 Jun 14 15:32 core.5567
          drwx------ 2 rootroot 65536 Jun 14 15:22 lost+found
          [oracle@JiekeXu02~]$ cd u01/app/oracle/acfs_advm
          [oracle@JiekeXu02acfs_advm]$ ll
          total 2676
          -rw------- 1 rootroot 2408448 Jun 14 15:32 core.5567
          drwx------ 2 rootroot 65536 Jun 14 15:22 lost+found
          复制


          创建成功后,可以查看大小 mount、dismount、resize 等

           


          使用 root 用户将其卸载,注意两节点均要 umount。



            [oracle@JiekeXu01 ~]$ df -h
            Filesystem Size Used Avail Use% Mounted on
            /dev/sda1 6.8G 3.4G 3.1G 52%
            /dev/sda3 4.9G 3.4G 1.3G 73% stage
            /dev/sda2 15G 13G 1.8G 88% u01
            tmpfs 506M 150M 356M 30% dev/shm
            /dev/asm/advm-84 2.0G 137M 1.9G 7%/u01/app/oracle/acfs_advm
            [root@JiekeXu01 ~]# bin/umount dev/asm/advm-84
            [root@JiekeXu01 ~]# df -h
            Filesystem Size Used Avail Use% Mounted on
            /dev/sda1 6.8G 3.4G 3.1G 52%
            /dev/sda3 4.9G 3.4G 1.3G 73% stage
            /dev/sda2 15G 13G 1.8G 88% u01
            tmpfs 4.0G 630M 3.4G 16% dev/shm
            复制


            节点 2 卸载时出现磁盘繁忙的错误,需要使用 lsof 或者 fuser 命令确认相关的进行并 kill掉,然后便可以 umount 卸载掉了。但卸载后两节点挂载点的目录文件还存在,将其重命名或者删除掉。

             

              [root@JiekeXu02 ~]# bin/umount dev/asm/advm-84
              umount: u01/app/oracle/acfs_advm: device is busy
              umount: u01/app/oracle/acfs_advm: device is busy
              umount: u01/app/oracle/acfs_advm: device is busy
              umount: u01/app/oracle/acfs_advm: device is busy


              [root@JiekeXu02 ~]# fuser /u01/app/oracle/acfs_advm
              /u01/app/oracle/acfs_advm: 13952c
              [root@JiekeXu02 ~]#
              [root@JiekeXu02 ~]# lsof /dev/asm/advm-84
              COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
              bash    13952 oracle  cwd   DIR 252,43009 4096    2/u01/app/oracle/acfs_advm 
              [root@JiekeXu02 ~]# kill -9 13952
              [root@JiekeXu02 ~]# /bin/umount /dev/asm/advm-84
              [root@JiekeXu02 ~]# df -h
              Filesystem Size Used Avail Use% Mounted on
              /dev/sda1 6.8G 3.4G 3.1G 52% /
              /dev/sda3 4.9G 139M 4.5G 3% /stage
              /dev/sda2 15G 7.8G 6.1G 56% /u01
              tmpfs                 4.0G  670M 3.4G  17% /dev/shm
              [root@ JiekeXu02 ~]# mv /u01/app/oracle/acfs_advm /u01/app/oracle/acfs_advm_bak
              [root@ JiekeXu02 ~]# ls -lh /u01/app/oracle/
              total 24K
              drwxr-xr-x 2 root root 4.0K May 31 22:16 acfs_advm_bak
              drwxr-x--- 3 oracle oinstall4.0K May 31 23:10 admin
              drwxr-x--- 5 oracle oinstall4.0K May 31 23:16 cfgtoollogs
              drwxr-xr-x 2 oracle oinstall4.0K May 31 23:04 checkpoints
              drwxrwxr-x 11 oracle oinstall 4.0K May 31 22:52 diag
              drwxr-xr-x 3 oracle oinstall4.0K May 31 22:36 product
              复制


              当卸载完成后便可以delete 删除了,如下图所示:

               


              ACFS 快照(About Oracle ACFSSnapshots


              Oracle ACFS 快照是 Oracle ACFS 文件系统的在线、只读或读写点副本。快照复制是空间高效的,并且使用了写时复制的功能。在修改或删除 Oracle ACFS 文件区段之前,将其当前值复制到快照,以维护文件系统的时间点视图。

               

              Oracle ACFS 快照创建后立即可用。快照是在文件系统的 .acfs/snaps/ 目录中创建的。在挂载文件系统时,它们总是在线的。因此,Oracle ACFS 快照可以支持在线恢复无意中从文件系统修改或删除的文件。每个文件系统最多支持 63 个只读、读写或只读和读写快照视图组合,因此可以使用跨越多个视图的灵活的在线文件恢复解决方案。Oracle ACFS 快照还可以用作文件系统备份的源,因为可以根据需要创建它,以提供活动文件系统的当前、一致的在线视图。

               

              要使用 Oracle ACFS 读写快照,ADVM 的磁盘组兼容性属性必须设置为 11.2.0.3.0 或更高。如果您在现有的 Oracle ACFS 文件系统上创建 了11.2.0.3.0 以前版本的读写快照,那么该文件系统将更新为 11.2.0.3.0 格式。在文件系统更新到更高版本之后,文件系统不能返回到更早的版本。

               

              Oracle ACFS snapshots are administered with the acfsutil snap commands. Forinformation about the acfsutil snap commands, refer to "acfsutil snapcreate", "acfsutil snap delete", and "acfsutil snapinfo".

               

                [root@JiekeXu01 acfs_advm]# acfsutil snap  -h
                [root@JiekeXu01 acfs_advm]# acfsutil snap create -h
                Usage: acfsutil [-h] snap create [-w|-r] <snap_name><mountpoint>
                [-w] - create a writeablesnapshot
                [-r] - create a read-only snapshot
                This is the default behavior.
                复制


                创建快照并在两节点查看快照


                  [root@JiekeXu01 acfs_advm]# /sbin/acfsutil snap create ACFS_SNAP1/u01/app/oracle/acfs_advm/
                  [root@JiekeXu01 acfs_advm]# /sbin/acfsutil snap create ACFS_SNAP2/u01/app/oracle/acfs_advm/
                  acfsutil snap create: Snapshot operation is complete.
                  [root@JiekeXu01 acfs_advm]# ll /u01/app/oracle/acfs_advm/.ACFS/snaps
                  total 8
                  drwxr-xr-x 4 root root 4096 Jun 14 16:25 ACFS_SNAP1
                  drwxr-xr-x 4 root root 4096 Jun 14 16:31 ACFS_SNAP2
                  [root@JiekeXu01 acfs_advm]# cd ACFS_SNAP1
                  -bash: cd: ACFS_SNAP1: No such file or directory
                  [root@JiekeXu01 acfs_advm]# ll /u01/app/oracle/acfs_advm/.ACFS/snaps/ACFS_SNAP1
                  total 2612
                  -rw------- 1 root root 2408448 Jun 14 15:32 core.5567
                  ?--------- ? ? ? ? ? lost+found
                  [root@JiekeXu01 acfs_advm]# pwd
                  /u01/app/oracle/acfs_advm
                  [root@JiekeXu01 acfs_advm]# ls -la
                  total 2684
                  drwxr-xr-x 4 root root 4096 Jun 14 15:32 .
                  drwxr-xr-x 9 oracle oinstall 4096Jun 14 15:19 ..
                  -rw------- 1 root root 2408448 Jun 14 15:32 core.5567
                  drwx------ 2 root root 65536 Jun 14 15:22 lost+found
                  [root@JiekeXu01 acfs_advm]# cd /u01/app/oracle/acfs_advm/.ACFS/snaps/ACFS_SNAP1
                  [root@JiekeXu01 ACFS_SNAP1]# ls -l
                  total 2612
                  -rw------- 1 root root 2408448 Jun 14 15:32 core.5567
                  ?--------- ? ? ? ? ? lost+found
                  [root@JiekeXu02 oracle]# ll /u01/app/oracle/acfs_advm/.ACFS/snaps/ACFS_SNAP1
                  total 2612
                  -rw------- 1 root root 2408448 Jun 14 15:32 core.5567
                  ?--------- ? ? ? ? ? lost+found
                  复制


                  EM 管理 ACFS(Managing Oracle ACFS with Oracle Enterprise Manager)


                  官方在线文档很是详细,这里就不用说明了。https://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfs_em.htm#OSTMG29100

                   

                  EM 管理 ACFS 快照官方在线文档很是详细,这里也不用说明了。

                  https://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfs_em.htm#OSTMG94289

                   

                  命令行管理 ACFS (Basic Steps to Manage Oracle ACFSSystems)

                   

                    asmcmd
                    ASMCMD> lsdg
                    State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
                    MOUNTED EXTERN N 512 4096 1048576 9788 7636 0 7636 0 N ACFS/
                    MOUNTED NORMAL N 512 4096 1048576 9788 8740 2447 3146 0 Y DATA/
                    MOUNTED EXTERN N 512 4096 1048576 9788 7438 0 7438 0 N FFRA/
                    复制

                     

                    创建卷标准语法


                      volcreate -G diskgroup -s size    
                      [ --column number ] [ --width stripe_width ]
                      [--redundancy {high|mirror|unprotected} ]
                      [--primary {hot|cold}] [--secondary {hot|cold}] volume
                      复制

                       

                      1、使用ASMCMD volcreate命令在挂载的磁盘组中创建一个Oracle ASM卷

                        ASMCMD> volcreate -G ACFS -s 2G ADVM1
                        ASMCMD> volinfo -G ACFS ADVM1
                        复制


                         

                        2、确定创建的卷的设备名称

                          ASMCMD> volinfo -G acfs advm1
                          Diskgroup Name: ACFS


                          Volume Name: ADVM1
                          Volume Device: /dev/asm/advm1-84
                          State: ENABLED
                          Size (MB): 2048
                          Resize Unit (MB): 32
                          Redundancy: UNPROT
                          Stripe Columns: 4
                          Stripe Width (K): 128
                          Usage: ACFS
                          Mountpath:
                          复制

                          3、使用Oracle ACFS mkfs 命令创建一个文件系统


                          /sbin/mkfs -t acfs /dev/asm/advm1-84

                            [root@JiekeXu01 ~]# /sbin/mkfs -t acfs /dev/asm/advm1-84
                            mkfs.acfs: version = 11.2.0.3.0
                            mkfs.acfs: on-disk version = 39.0
                            mkfs.acfs: volume = /dev/asm/advm1-84
                            mkfs.acfs: volume size = 2147483648
                            mkfs.acfs: Format complete.
                            [root@JiekeXu01 ~]# df -h
                            Filesystem Size Used Avail Use% Mounted on
                            /dev/sda1 6.8G 3.4G 3.1G 52% /
                            /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                            /dev/sda2 15G 13G 1.7G 88% /u01
                            tmpfs 4.0G 630M 3.4G 16% /dev/shm
                            /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                            复制

                             

                            4、可以选择使用 acfsutil registry 命令注册文件系统。

                            /sbin/acfsutil registry -a  /dev/asm/advm1-84  /u01/app/oracle/acfs_advm1

                             

                              [root@JiekeXu01 ~]# /sbin/acfsutil registry -a /dev/asm/advm1-84 /u01/app/oracle/acfs_advm1
                              acfsutil registry: mount point/u01/app/oracle/acfs_advm1 successfully added to Oracle Registry
                              [root@JiekeXu01 ~]# df -h
                              Filesystem Size Used Avail Use% Mounted on
                              /dev/sda1 6.8G 3.4G 3.1G 52% /
                              /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                              /dev/sda2 15G 13G 1.7G 88% /u01
                              tmpfs 4.0G 630M 3.4G 16% /dev/shm
                              /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                              /dev/asm/advm1-84 2.0G 41M 2.0G 2% /u01/app/oracle/acfs_advm1
                              复制

                               

                              5、使用 Oracle ACFS Mount 命令挂载文件系统。可以在注册文件系统之前或之后挂载文件系统。如果文件系统已经注册,您可以等待文件系统被自动挂载。


                                /bin/mount -t acfs /dev/asm/advm1-84/u01/app/oracle/acfs_advm1
                                chown -R oracle:dba/u01/app/oracle/acfs_advm1
                                复制


                                6、在文件系统中创建一个测试文件


                                  echo "Oracle ACFS File System"> /u01/app/oracle/acfs_advm1/myfile
                                  复制

                                   

                                  7、列出在文件系统中创建的测试文件的内容。


                                    cat /u01/app/oracle/acfs_advm1/myfile
                                    复制

                                     

                                      [root@JiekeXu01 ~]# /bin/mount -t acfs /dev/asm/advm1-84 /u01/app/oracle/acfs_advm1
                                      [root@JiekeXu01 ~]# df -h
                                      Filesystem Size Used Avail Use% Mounted on
                                      /dev/sda1 6.8G 3.4G 3.1G 52% /
                                      /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                                      /dev/sda2 15G 13G 1.7G 88% /u01
                                      tmpfs 4.0G 630M 3.4G 16% /dev/shm
                                      /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                                      /dev/asm/advm1-84 2.0G 73M 2.0G 4% /u01/app/oracle/acfs_advm1
                                      [root@JiekeXu01 ~]# cd /u01/app/oracle/
                                      [root@JiekeXu01 oracle]# ll
                                      total 32
                                      drwxr-xr-x 4 root root 4096 Jun 14 15:32 acfs_advm
                                      drwxrwx--- 4 root dba 4096 Jun 14 18:00 acfs_advm1
                                      drwxr-xr-x 2 root root 4096 May 31 22:16 acfs_advm_bak
                                      drwxr-x--- 3 oracle oinstall 4096 May 31 23:10 admin
                                      drwxr-x--- 5 oracle oinstall 4096 May 31 23:16 cfgtoollogs
                                      drwxr-xr-x 2 oracle oinstall 4096 May 31 23:04 checkpoints
                                      drwxrwxr-x 11 oracle oinstall 4096 May 3122:52 diag
                                      drwxr-xr-x 3 oracle oinstall 4096 May 31 22:36 product
                                      [root@JiekeXu01 oracle]# chown -R oracle:dba /u01/app/oracle/acfs_advm1
                                      [root@JiekeXu01 oracle]# ll
                                      total 32
                                      drwxr-xr-x 4 root root 4096 Jun 14 15:32 acfs_advm
                                      drwxrwx--- 4 oracle dba 4096 Jun 1418:00 acfs_advm1
                                      drwxr-xr-x 2 root root 4096 May 31 22:16 acfs_advm_bak
                                      drwxr-x--- 3 oracle oinstall 4096 May 31 23:10 admin
                                      drwxr-x--- 5 oracle oinstall 4096 May 31 23:16 cfgtoollogs
                                      drwxr-xr-x 2 oracle oinstall 4096 May 31 23:04 checkpoints
                                      drwxrwxr-x 11 oracle oinstall 4096 May 3122:52 diag
                                      drwxr-xr-x 3 oracle oinstall 4096 May 31 22:36 product
                                      [root@JiekeXu01 oracle]# echo "OracleACFS File System" > /u01/app/oracle/acfs_advm1/myfile
                                      [root@JiekeXu01 oracle]# cat /u01/app/oracle/acfs_advm1/myfile
                                      Oracle ACFS File System
                                      [root@JiekeXu01 oracle]#


                                      --节点2 查看
                                      [oracle@JiekeXu02 ~]$ df -h
                                      Filesystem Size Used Avail Use% Mounted on
                                      /dev/sda1 6.8G 3.4G 3.1G 52% /
                                      /dev/sda3 4.9G 139M 4.5G 3% /stage
                                      /dev/sda2 15G 8.1G 5.8G 59% /u01
                                      tmpfs 4.0G 670M 3.4G 17% /dev/shm
                                      /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                                      /dev/asm/advm1-84 2.0G 73M 2.0G 4% /u01/app/oracle/acfs_advm1
                                      [oracle@JiekeXu02 ~]$
                                      [oracle@JiekeXu02 ~]$ cat /u01/app/oracle/acfs_advm1/myfile
                                      Oracle ACFS File System
                                      [oracle@JiekeXu02 ~]$ cd /u01/app/oracle/acfs_advm1
                                      [oracle@JiekeXu02 acfs_advm1]$ ll
                                      total 68
                                      drwx------ 2 oracle dba 65536 Jun 14 18:00 lost+found
                                      -rw-r--r-- 1 root root 24 Jun 14 18:03 myfile
                                      复制

                                       

                                      卷删除命令


                                        voldelete -G ACFS ADVM1
                                        复制

                                         

                                        卷禁用、启用、查看命令

                                        voldisablevolenablevolinfo


                                          voldisable { -a | -G diskgroup -a | -G diskgroup volume }
                                          volenable { -a | -G diskgroup -a | -G diskgroup volume }
                                          volinfo { -a | -G diskgroup -a | -G diskgroup volume }volinfo {--show_diskgroup |--show_volume} volumedevice
                                          复制


                                          volstat 显示卷信息

                                           

                                            ASMCMD> volstat -G acfs


                                            DISKGROUP NUMBER / NAME: 1 / ACFS
                                            ---------------------------------------
                                            VOLUME_NAME
                                            READS BYTES_READ READ_TIME READ_ERRS
                                            WRITES BYTES_WRITTEN WRITE_TIME WRITE_ERRS
                                            -------------------------------------------------------------
                                            ADVM
                                            1003 4937728 3.656 0
                                            1553 7982592 4.982 0
                                            ADVM1
                                            0 0 0 0
                                            0 0 0 0
                                            复制

                                             

                                            volset 设置卷属性


                                              volset -G diskgroup [ --usagestring string]        
                                              [--mountpath mount_path ]
                                              [--primary {hot|cold}] [--secondary {hot|cold}] volume
                                              复制


                                                ASMCMD> volset -G ACFS --usagestring 'ACFS' ADVM1
                                                ASMCMD> volinfo -G ACFS ADVM1
                                                复制

                                                 


                                                 

                                                volresize 调整 Oracle ADVM 卷的大小


                                                  volresize -G diskgroup -s size [ -f ] volume
                                                  复制


                                                    volresize -G ACFS  -s 2050M  -f  ADVM1
                                                    复制

                                                     

                                                    ASMCMD> volresize -G ACFS -s 2050M -f ADVM1

                                                    ORA-15032: not all alterations performed

                                                    ORA-15476: ACFS volumes must be resized with the 'acfsutilsize' operating system command. (DBD ERROR: OCIStmtExecute)

                                                    ASMCMD> quit

                                                     

                                                    居然报错提示使用操作系统命令,如下使用acfsutil size +1G /u01/app/oracle/acfs_advm1 命令完成扩容。

                                                     

                                                      [root@JiekeXu01 ACFS_SNAP1]# acfsutil size-h
                                                      Usage: acfsutil [-h] size[-|+]nnn[K|M|G|T|P] <path> - Resize file system
                                                      [root@JiekeXu01 ACFS_SNAP1]# df -h
                                                      Filesystem Size Used Avail Use% Mounted on
                                                      /dev/sda1 6.8G 3.4G 3.1G 52% /
                                                      /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                                                      /dev/sda2 15G 13G 1.8G 88% /u01
                                                      tmpfs 4.0G 630M 3.4G 16% /dev/shm
                                                      /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                                                      /dev/asm/advm1-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm1
                                                      [root@JiekeXu01 ACFS_SNAP1]# acfsutil size +3G /u01/app/oracle/acfs_advm1
                                                      acfsutil size: new file system size:5368709120 (5120MB)
                                                      [root@JiekeXu01 ACFS_SNAP1]# df -h
                                                      Filesystem Size Used Avail Use% Mounted on
                                                      /dev/sda1 6.8G 3.4G 3.1G 52% /
                                                      /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                                                      /dev/sda2 15G 13G 1.8G 88% /u01
                                                      tmpfs 4.0G 630M 3.4G 16% /dev/shm
                                                      /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                                                      /dev/asm/advm1-84 5.0G 143M 4.9G 3% /u01/app/oracle/acfs_advm1
                                                      [root@JiekeXu01 ACFS_SNAP1]# acfsutil size -2G /u01/app/oracle/acfs_advm1
                                                      acfsutil size: new file system size:3221225472 (3072MB)
                                                      [root@JiekeXu01 ACFS_SNAP1]# df -h
                                                      Filesystem Size Used Avail Use% Mounted on
                                                      /dev/sda1 6.8G 3.4G 3.1G 52% /
                                                      /dev/sda3 4.9G 3.4G 1.3G 73% /stage
                                                      /dev/sda2 15G 13G 1.8G 88% /u01
                                                      tmpfs 4.0G 630M 3.4G 16% /dev/shm
                                                      /dev/asm/advm-84 2.0G 137M 1.9G 7% /u01/app/oracle/acfs_advm
                                                      /dev/asm/advm1-84     3.0G 143M  2.9G   5% /u01/app/oracle/acfs_advm1
                                                      复制



                                                      更多 ACFS 信息请查看官方文档

                                                      https://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfs_util001.htm#OSTMG94787

                                                       

                                                      使用 RMAN 执行 Oracle ASM 数据迁移


                                                      最后,说明的一点是 Rman 备份数据可以存储在 ASM 里,具体的步骤请查看以下官方文档链接,下边一脚本只是抛砖引玉了。

                                                      https://docs.oracle.com/cd/E11882_01/server.112/e18951/asm_rman.htm#OSTMG12121

                                                       

                                                        RUN
                                                        {
                                                        ALLOCATE CHANNEL dev1 DEVICE TYPE DISK;
                                                        ALLOCATE CHANNEL dev2 DEVICE TYPE DISK;
                                                        ALLOCATE CHANNEL dev3 DEVICE TYPE DISK;
                                                        ALLOCATE CHANNEL dev4 DEVICE TYPE DISK;
                                                        BACKUP AS COPY
                                                        INCREMENTAL LEVEL 0
                                                        DATABASE
                                                        FORMAT '+DATA'
                                                        TAG 'ORA_ASM_MIGRATION';
                                                        }
                                                        复制


                                                        关于 ACFS 网上一篇翻译也很不错,感兴趣的可以查看。

                                                        https://blog.csdn.net/tianlesoftware/article/details/8457494

                                                         

                                                        操作环境说明:操作系统版本:EnterpriseLinux Enterprise Linux Server release 5.4 (Carthage)

                                                        数据库版本:11.2.0.3(p10404530),环境均使用 Oracle 用户管理。


                                                         

                                                        好了,到这里就告一段落了,写作不易,此文如果对你有帮助,请支持点“在看”与转发,您的支持便是我不断写作的最大的动力,让我们一起努力做更好的自己!




                                                        Oracle 11GR2 RAC 最新补丁 190416 安装指导

                                                        你该知道的 Oracle 认证那些事儿(送 OCP 题库)

                                                        三万字打造 91 道 MySQL 面试题【建议收藏】

                                                        Oracle 软件包及补丁包免费下载及简单说明

                                                        Oracle ASM 磁盘组基础知识整理(收藏版)

                                                        Oracle 12C 最新补丁下载与安装操作指北

                                                        Oracle 12CR2 安装配置与基础学习

                                                        Windows 环境下安装 Oracle 19C


                                                        点亮在看,你最好看!

                                                        文章转载自JiekeXu之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                                        评论