使用ASMACFS文件系统(一)

2014-11-24 13:57:17 · 作者: · 浏览: 0
ACFS是oracle提供的基于ASM的共享文件系统,在11.2版本之上才能使用。可以在安装oracle asm软件的主机上用作共享文件系统,存放归档日志,本地的rman备份等,比单纯放在ASM中更直观,可以使用os上的命令进行检查和操作。下面是简单的用法

1,create DG
SQL> CREATE DISKGROUP ACFSDG EXTERNAL REDUNDANCY DISK 'ORCL:ASMDISK8' SIZE 4157 M DISK 'ORCL:ASMDISK9' SIZE 4157 M

ATTRIBUTE 'compatible.asm' = '11.2', 'compatible.advm' = '11.2';

2,修改版本,有时候虽然 数据库的安装版本是11.2,一些参数版本不是,安装前请检查
alter diskgroup FRA set attribute 'COMPATIBLE.ASM'='11.2';

alter diskgroup FRA set attribute 'compatible.advm'='11.2'

3,如果已有DG,可省略
SQL> ALTER DISKGROUP FRA ADD VOLUME ACFSARCVOL SIZE 100G;

Diskgroup altered.

ASMCMD> volinfo -a
Diskgroup Name: FRA

         Volume Name: ACFSARCVOL
         Volume Device: /dev/asm/acfsarcvol-306
         State: ENABLED
         Size (MB): 102400
         Resize Unit (MB): 256
         Redundancy: UNPROT
         Stripe Columns: 4
         Stripe Width (K): 128
         Usage:
         Mountpath: 

4,挂载文件系统
su - root
mkidr -p /archive
 chown oracle:oinstall /archive
/sbin/mkfs -t acfs -b 4k /dev/asm/acfsarcvol-306
[root@dtydb3 ~]# /sbin/mkfs -t acfs -b 4k /dev/asm/acfsarcvol-306
mkfs.acfs: version                   = 11.2.0.2.0
mkfs.acfs: on-disk version           = 39.0
mkfs.acfs: volume                    = /dev/asm/acfsarcvol-306
mkfs.acfs: volume size               = 107374182400
mkfs.acfs: Format complete.

[root@dtydb3 ~]# /sbin/acfsutil registry -f -a /dev/asm/acfsarcvol-306 /archive
acfsutil registry: mount point /archive successfully added to Oracle Registry
[root@dtydb3 ~]#

[root@dtydb3 ~]# /sbin/mount.acfs -o all

[root@dtydb3 ~]# df -h

/dev/asm/acfsarcvol-306
                      100G  304M  100G   1% /archive

5, 再一次查看信息

ASMCMD> volinfo -a
Diskgroup Name: FRA

         Volume Name: ACFSARCVOL
         Volume Device: /dev/asm/acfsarcvol-306
         State: ENABLED
         Size (MB): 102400
         Resize Unit (MB): 256
         Redundancy: UNPROT
         Stripe Columns: 4
         Stripe Width (K): 128
         Usage: ACFS
         Mountpath: /archive 

如果是rac其它主机也可以看到该文件 系统


6,扩acfs文件系统,resize 大小
su - grid
[grid@dtydb4 ~]$ /sbin/acfsutil size 110G /archive
acfsutil size: new file system size: 118111600640 (112640MB)

[grid@dtydb4 ~]$ df -h /archive
Filesystem            Size  Used Avail Use% Mounted on
/dev/asm/acfsarcvol-306
                      110G  3.5G  107G   4% /archive

7,修改DB_RECOVERY_FILE_DEST_SIZE到acfs上
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE = 10G SCOPE=BOTH SID='*';

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST = '/backup/flash_recovery_area' SCOPE=BOTH SID='*';

如果不使用acfs,而是默认备份到ASM磁盘组FRA中,使用如下命令

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST = '+FRA' SCOPE=BOTH SID='*';

参考文档

How To Resize An ACFS Filesystem/ASM Volume (ADVM) [ID 1173978.1]
How To Create A New ACFS Volume & Filesystem And Set The ACFS Filesystem Ownership To A Non-Grid/Oracle OS User [ID 1322383.1]
http://docs.oracle.com/cd/E18283_01/server.112/e16102/asmfs_util001.htm#BABGBDFH

附录:

1)删除acfs,官方的文档,可以参考下

To permanently remove a volume and Oracle ACFS file system, perform the following steps. These steps destroy the data in the file system.

Deregister the file system with acfsutil registry -d.

For example:

$ /sbin/acfsutil registry -d /oracle/acfsmounts/acfs1
acfsutil registry: successfully removed ACFS mount point
/oracle/acfsmounts/acfs1 from Oracle Registry

For information about running acfsutil registry, see "acfsutil registry".

Dismount the file system.

For example:

# /bin/umount /oracle/acfsmounts/acfs1

You must dismount the file system on a