实验环境:Oracle 11g R2 RAC (11.2.0.3.5)
               Oracle Enterprise Linux 5.6 x86
1、创建 ASM 磁盘组
在两节点挂好磁盘后,在第一节点上对磁盘进行分区
[root@rac1 ~]# fdisk -l
Disk /dev/sde: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1         261     2096451   83  Linux


在第1节点上创建 ASM 磁盘
[root@rac1 ~]# oracleasm createdisk GOLDENGATE /dev/sde1
[root@rac1 ~]# oracleasm scandisks
[root@rac1 ~]# oracleasm listdisks
DATA
FRA
GOLDENGATE
OCR_VOTE

在第2节点上扫描ASM磁盘
[root@rac2 ~]# oracleasm listdisks
DATA
FRA
GOLDENGATE
OCR_VOTE

在第一节点上切换到 grid 用户下,执行 ASMCA 创建 ASM 磁盘组
要在 ASM diskgroup 上创建 Oracle ADVM volume ,diskgroup 的 COMPATIBLE.ASM 和 COMPATIBLE.ADVM 兼容性必须 设置为 11.2.0.2。

可以在创建磁盘组时选择“Advanced Options”设置diskgroup的该属性,也可以通过 sql 命令创建磁盘组或者修改磁盘组的该属性,
方法如下:
ALTER DISKGROUP goldengate SET ATTRIBUTE 'compatible.asm' = '11.2.0.2';
ALTER DISKGROUP goldengate SET ATTRIBUTE 'compatible.rdbms' = '11.2.0.2';
ALTER DISKGROUP goldengate SET ATTRIBUTE 'compatible.advm' = '11.2.0.2';

2、创建 Oracle 
ADVM volume

切换到grid用户下,进入ASMCMD命令行界面
su - grid
[grid@rac1 ~]$ export ORACLE_SID=+ASM1
[grid@rac1 ~]$ asmcmd
核实刚刚创建的ASM磁盘组的实际大小
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 5114 3027 0 3027 0 N DATA/
MOUNTED EXTERN N 512 4096 1048576 5114 4613 0 4613 0 N FRA/
MOUNTED EXTERN N 512 4096 1048576 2047 29 0 29 0 N GOLDENGATE/
MOUNTED EXTERN N 512 4096 1048576 2047 1651 0 1651 0 Y OCR_VOTE/
创建 Oracle ADVM 卷
ASMCMD> volcreate -G GOLDENGATE -s 1900m GOLDENGATE
注意这里 -s 选项指定的大小一定不得超过lsdg 显示的实际大小值,否则会报如下错误:
ASMCMD> volcreate -G GOLDENGATE -s 1950m GOLDENGATE
ORA-15032: not all alterations performed
ORA-15041: diskgroup "GOLDENGATE" space exhausted (DBD ERROR: OCIStmtExecute)
确定Oracle ADVM 卷是否创建
ASMCMD> volinfo -G GOLDENGATE GOLDENGATE
Diskgroup Name: GOLDENGATE Volume Name: GOLDENGATE
Volume Device: /dev/asm/goldengate-257
State: ENABLED
Size (MB): 1920
Resize Unit (MB): 32
Redundancy: UNPROT
Stripe Columns: 4
Stripe Width (K): 128
Usage:
Mountpath:
SQL> col volume_device for a30
SQL> col volume_name for a30
SQL> SELECT volume_name, volume_device FROM V$ASM_VOLUME
2 WHERE volume_name ='GOLDENGATE'; VOLUME_NAME VOLUME_DEVICE
------------------------------ ------------------------------
GOLDENGATE /dev/asm/goldengate-257
3、创建Oracle ACFS 文件系统
[root@rac1 ~]# /sbin/mkfs -t acfs /dev/asm/goldengate-257
mkfs.acfs: version = 11.2.0.3.0
mkfs.acfs: on-disk version = 39.0
mkfs.acfs: volume = /dev/asm/goldengate-257
mkfs.acfs: volume size = 2013265920
mkfs.acfs: Format complete.
在节点1和2上分别创建 ACFS 文件系统的挂载点
[root@rac1 ~]# su - oracle
[oracle@rac1 ~]$ mkdir -p /home/oracle/ggs
[root@rac2 ~]# su - oracle
[oracle@rac2 ~]$ mkdir -p /home/oracle/ggs
在集群 mount registery 中注册刚刚创建的 ACFS 文件系统,也可以不注册,直接手动挂载。
注册 ACFS 文件系统的好处是在集群每隔30秒检查 mount registery 时会在每个节点自动挂载该文件系统,同时当集群软件或系统重启后也会自动挂载该文件系统。
[root@rac1 ~]# /sbin/acfsutil registry -a /dev/asm/goldengate-257 /home/oracle/ggs
acfsutil registry: mount point /home/oracle/ggs successfully added to Oracle Registry
手动挂载命令如下:
[root@rac1 ~]# /bin/mount -t acfs /dev/asm/goldengate-257 /home/oracle/ggs
执行注册命令后等待30秒,然后在各节点查看ACFS文件系统是否挂载
[root@rac1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 30G 20G 7.7G 73% /
/dev/sda3 1003M 39M 914M 5% /tmp
tmpfs 1.3G 454M 814M 36% /dev/shm
/dev/asm/goldengate-257
1.9G 73M 1.9G 4% /home/oracle/ggs
[oracle@rac2 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 30G 21G 7.3G 74% /
/dev/sda3 1003M 39M 914M 5% /tmp
tmpfs 1.3G 450M 818M 36% /dev/shm
/dev/asm/goldengate-257
1.9G 137M 1.8G 8% /home/oracle/ggs
4、测试文件系统
[root@rac1 ~]# chown -R oracle:oinstall /home/oracle/ggs
第一节点
[oracle@rac1 ~]$ echo "Oracle ACFS File System" > /home/oracle/ggs/acfs.log
[oracle@rac1 ggs]$ more /home/oracle/ggs/acfs.log
Oracle ACFS File System
第二节点
[oracle@rac2 ~]$ more /home/oracle/ggs/acfs.log
Oracle ACFS File System


转载请注明作者出处及原文链接,否则将追究法律责任:

作者:xiangsir

原文链接:http://blog.csdn.net/xiangsir/article/details/10007779

QQ:444367417

MSN:xiangsir@hotmail.com

[置顶] Oracle 11g ASM:如何在 ASMCMD 命令行工具中创建 Oracle ACFS 文件系统的更多相关文章

  1. 转://oracle 11G+ASM for Linux手工建库

    环境描述 环境:Oracle Linux 6.5 + ORACLE 11g R2+ASM ORACLE的程序已经安装完毕.但是没有创建任何数据库. 实验内容 安装ORACLE11g数据库,不使用DBC ...

  2. centos 安装oracle 11g r2(二)-----监听配置与创建数据库实例

    centos 安装oracle 11g r2(二)-----监听配置与创建数据库实例 一.监听配置(命令:netca) 1.以 oracle 用户输入命令,启动图形化工具配置监听 [oracle@lo ...

  3. 在64位SQL Server中创建Oracle的链接服务器

    当我们同时使用SQL Server和Oracle来存储数据时,经常会用到跨库查询.为了方便使用跨库查询,一个最好的办法就是通过创建链接服务器来实现.既可以在SQL Server中创建Oracle的链接 ...

  4. 在64位SQL Server中创建Oracle的链接服务器 Link Server

    有时候我们希望在一个sqlserver下访问另一个sqlserver数据库上的数据,或者访问其他oracle数据库上的数据,要想完成这些操作,我们首要的是创建数据库链接. 数据库链接能够让本地的一个s ...

  5. SqlServer中创建Oracle连接服务器

    转自太祖元年的:http://www.cnblogs.com/jirglt/archive/2012/06/10/2544025.html参考:http://down.51cto.com/data/9 ...

  6. 在mysql数据库中创建oracle scott用户的四个表及插入初始化数据

    在mysql数据库中创建oracle scott用户的四个表及插入初始化数据 /* 功能:创建 scott 数据库中的 dept 表 */ create table dept( deptno int ...

  7. Linux服务器中创建Oracle数据库实例

    紧接上篇,在Linux服务器已经完成对Oracle数据库软件的安装后,接下来要创建Oracle实例,看图说话: [su – oracle echo $DISPLAY export DISPLAY=10 ...

  8. 在mysql数据库中创建Oracle数据库中的scott用户表

    在mysql数据库中创建Oracle数据库中的scott用户表 作者:Eric 微信:loveoracle11g create table DEPT ( DEPTNO int(2) not null, ...

  9. 如何在cmd命令行中查看、修改、删除与添加环境变量,语法格式例子:set path;echo %APPDATA%

    如何在cmd命令行中查看.修改.删除与添加环境变量 首先明确一点: 所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改.也就是说当关闭此cmd命令行窗口后,将不再起作用.永久性修 ...

随机推荐

  1. codeforces 569A Music

    codeforces  569A   Music   解题报告 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=88890#pro ...

  2. 「OC」 封装

    一.面向对象和封装 面向对象的三大特性:封装.继承和多态 在OC语言中,使用@interface和@implementation来处理类.   @interface就好像暴露在外面的时钟表面,像外界提 ...

  3. Software Version --hdu1976

    #include using namespace std; int main() { int T; cin>>T; int a1,b1,c1; int a2,b2,c2; while(T- ...

  4. 用SQL实现统计报表中的"小计"与"合计"的方法详解

    本篇文章是对使用SQL实现统计报表中的"小计"与"合计"的方法进行了详细的分析介绍,需要的朋友参考下   客户提出需求,针对某一列分组加上小计,合计汇总.网上找 ...

  5. 转:从pickle看python类成员的动态加载和类的定位

      pickle是Python轻便的对象序列化工具.使用pickle可以方便地把python对象写入文件对象中,或者像soap那样在socket间传送.     按照python的一贯作风,类的成员在 ...

  6. 谈谈Facebook的聊天系统架构

    今天看到一份 Facebook 公司 2009 年的 Slideshow, 介绍它的聊天系统架构, 其中的一张图结构非常清晰, 所以我对这张图谈谈我的看法. Web Tier: 用 PHP 开发, 聊 ...

  7. HDU 4569Special equations2012长沙邀请赛E题(数学知识)

    Special equations Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  8. Flow Problem(最大流)

    Flow Problem Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Tot ...

  9. - 通过 UIBezierPath 做一个中空的扫描器

    今天在公司的代码里看到通过 UIBezierPath 绘制 CALayer 然后实现中空的正方形,感觉还挺有意思的,简单记录一下 UIBezierPath 这个东西. 一条线 我们自定义一个 Bezi ...

  10. sqlserver 分页查询总结

    sqlserver2008不支持关键字limit ,所以它的分页sql查询语句将不能用mysql的方式进行,幸好sqlserver2008提供了top,rownumber等关键字,这样就能通过这几个关 ...