创建ASM磁盘组只在节点一mount处理-孟东
- 格式:docx
- 大小:946.99 KB
- 文档页数:3
HPUX下创建ASM磁盘三步走前些日子在VMWARE上承载的linux5.1操作系统下做了ORACLE RAC的实验,其中的ASM磁盘也是基于ASMLib的方式创建,而这种方式目前只适合于linux操作系统,如果要在UNIX平台下创建ASM 磁盘,这种方法就不适用。
下面介绍怎样在HPUX平台下创建ASM磁盘:平台:HP IA64操作系统:HPUX 11.23主节点名称:storm3副节点名称:storm4第一步:分别在主、副节点识别到共享磁盘的路径:storm3[/]ioscan -fnC diskdisk 3 0/0/0/0.3.0 sdisk CLAIMED DEVICE HP Virtual LvDisk/dev/dsk/c0t3d0 /dev/rdsk/c0t3d0disk 4 0/0/0/0.4.0 sdisk CLAIMED DEVICE HP Virtual LvDisk/dev/dsk/c0t4d0 /dev/rdsk/c0t4d0storm4[/]ioscan -fnC diskdisk 3 0/0/0/0.4.0 sdisk CLAIMED DEVICE HP Virtual LvDisk/dev/dsk/c0t4d0 /dev/rdsk/c0t4d0disk 4 0/0/0/0.5.0 sdisk CLAIMED DEVICE HP Virtual LvDisk/dev/dsk/c0t5d0 /dev/rdsk/c0t5d0可以看到在主、副节点显示出不同的硬件路径,主节点的/dev/rdsk/c0t3d0对应副节点的/dev/rdsk/c0t4d0,主节点的/dev/rdsk/c0t4d0对应副节点的/dev/rdsk/c0t5d0,不影响实验效果。
第二步:分别给字符设备文件赋予正确的属主以及权限。
storm3[/dev/rdsk]lltotal 0crw-r--r-- 1 bin sys 188 0x000000 Apr 23 10:40 c0t0d0crw-r--r-- 1 bin sys 188 0x000001 Apr 23 10:40 c0t0d0s1crw-r--r-- 1 bin sys 188 0x000002 Apr 23 10:40 c0t0d0s2crw-r--r-- 1 bin sys 188 0x000003 Apr 23 10:40 c0t0d0s3crw-r--r-- 1 bin sys 188 0x001000 Apr 23 12:21 c0t1d0crw-r--r-- 1 bin sys 188 0x002000 Apr 23 12:23 c0t2d0crwxrwxrwx 1 oracle dba 188 0x003000 Apr 24 14:19 c0t3d0 crwxrwxrwx 1 oracle dba 188 0x004000 Apr 24 14:19 c0t4d0storm4[/dev/rdsk]lltotal 0crw-r--r-- 1 bin sys 188 0x000000 Apr 23 11:52 c0t0d0crw-r--r-- 1 bin sys 188 0x000001 Apr 23 11:52 c0t0d0s1crw-r--r-- 1 bin sys 188 0x000002 Apr 23 11:52 c0t0d0s2crw-r--r-- 1 bin sys 188 0x000003 Apr 23 11:52 c0t0d0s3crw-r--r-- 1 bin sys 188 0x002000 Apr 23 12:07 c0t2d0crw-r--r-- 1 bin sys 188 0x003000 Apr 23 12:07 c0t3d0crwxrwxrwx 1 oracle dba 188 0x004000 Apr 24 14:17 c0t4d0 crwxrwxrwx 1 oracle dba 188 0x005000 Apr 24 10:09 c0t5d0这里有一个细节值得注意,就是主、副节点都必须赋予同样的属主、权限,而不能出现只关照了主节点的字符设备,从而忽略了副节点。
oracleasm磁盘管理基础篇(一)今天是2014-02-27,从今天开始准备记录一系列的asm笔记。
在此记录一下。
(一)asm常见参数:和database实例一样,asm同样具有启动实例的相关参数,具体如下:asm_diskgroups:指定asm实例启动的时候需要mount的disk group名字:asm_disktsring :指定一个asm实例寻找磁盘的路径名可以有通配符。
asm_power_limit:指定在磁盘组中平衡数据的时候默认的power 大小。
asm_preferred_read_failure_groups:指定优先读取的故障组diagnostic_dest:asm实例diagnostics的目录instance_type:实例类型,对于asm实例必须为asmremote_login_passwordfile:验证是否需要去读密码文件(二)asm实例和数据库实例参数文件搜索过程:对于asm实例在启动的时候需要参数文件,那么一般搜索过程为:1、先根据GPNP profile文件指定的参数文件位置进行寻找2、如果没有在GPNP profile中指定的目录找到,那么将寻找$ORACLE_HME/dbs/spfile+ASM.ora3、如果没有spfile+ASM.ora,那么将寻找pfile文件。
如果上述没有找到则无法启动asm对于数据库实例启动的时候需要参数文件,那么搜素过程为:1、寻找 $ORACLE_HOME/dbs/spfile.ora,2、寻找 $ORACLE_HOME/dbs/spfile.ora3、寻找 $ORACLE_HOME/dbs/init.ora如果上述没有找到参数文件,那么数据库实例无法启动。
(三)使用sql命令create diskgroup创建磁盘组当创建磁盘组之前需要注意一下几点:1、指定磁盘组的唯一名字(注:不要使用对象名字)2、指定磁盘组的平衡等级,一旦自定将无法修改3、指定的磁盘将被格式化为oracle asm磁盘组的磁盘4、选择指定磁盘组属于指定的故障组5、选择指定故障组的类型(有QUORUM和REGULAR故障组)6、指定磁盘组的属性(如软件兼容版本或是au大小等)注意:一个磁盘只能属于一个磁盘组,且所有刚刚创建的磁盘都是有唯一的地址路径不属于现有的所有磁盘组,如果一个磁盘原先属于一个磁盘组,但是坏掉了当修复后,这个磁盘将不在是磁盘组的一部分,但是asm实例依然在磁盘组中保留该磁盘的成员信息,可以使用force参数将该磁盘加入磁盘组。
在Linux系统中,mount是一个常用的命令,用于将分区挂载到指定的文件夹下,从而将分区和该目录联系起来。
通过访问这个文件夹,就可以访问该分区的内容。
以下是mount命令的一些常用选项和用法:挂载光盘镜像文件:bashmount -t iso9660 /dev/cdrom /mnt/cdrom这个命令将光盘镜像文件挂载到/mnt/cdrom目录下,-t iso9660指定了文件系统的类型为ISO 9660。
挂载移动硬盘:bashmount /dev/sdb1 /mnt/usb这个命令将移动硬盘的第一个分区/dev/sdb1挂载到/mnt/usb目录下。
挂载U盘:bashmount /dev/sdc1 /mnt/usb这个命令将U盘的第一个分区/dev/sdc1挂载到/mnt/usb目录下。
挂载Windows网络共享:bashmount -t cifs //windows-pc/share /mnt/windows-share -o username=username,password=password这个命令将Windows网络共享挂载到/mnt/windows-share目录下。
需要提供Windows网络的凭据(用户名和密码)。
挂载UNIX NFS网络共享:bashmount -t nfs server:/path/to/shared /mnt/nfs-share这个命令将UNIX NFS网络共享挂载到/mnt/nfs-share目录下。
需要指定NFS服务器的地址和共享路径。
以上是mount命令的一些常见用法示例。
在使用时,可以根据实际情况选择适当的选项和参数。
可以通过运行man mount命令来查看更多关于mount命令的详细信息和选项说明。
mount 读写什么是mount在计算机领域,mount(挂载)是指将一个文件系统连接到文件树的特定位置,使得操作系统可以访问该文件系统中的数据。
这个过程涉及将文件系统的根目录与指定的挂载点关联起来,使得在挂载点下可以看到文件系统中的所有文件和目录。
在Linux和类Unix系统中,mount是一个非常重要的命令。
通过mount命令,用户可以将外部设备(如硬盘、U盘、光盘等)或网络共享资源挂载到本地文件系统上。
这样一来,用户就可以像访问本地文件一样访问这些外部设备或网络共享资源。
mount命令语法mount命令的基本语法如下:mount [-t 文件系统类型] [-o 特殊选项] 设备文件名挂载点其中,•-t 文件系统类型:指定要挂载的文件系统类型,默认情况下会自动检测。
•-o 特殊选项:指定特殊选项,比如读写权限、允许其他用户访问等。
•设备文件名:指定要挂载的设备文件名,可以是硬盘分区、U盘、光盘等。
•挂载点:指定要将设备挂载到哪个目录下。
mount命令的常用选项mount命令有许多可选的特殊选项,常用的选项如下:•-o ro:以只读方式挂载设备,即不能对设备进行写操作。
•-o rw:以读写方式挂载设备,即可以对设备进行读写操作。
•-o remount:重新挂载已经挂载的设备,可以修改挂载的特殊选项。
•-o noexec:禁止在该文件系统上执行可执行文件。
•-o nosuid:禁止使用setuid和setgid权限位。
•-o nodev:禁止创建设备文件。
挂载硬盘分区在Linux系统中,硬盘分区通常以/dev/sdXN的形式表示,其中X是字母a到z之间的一个字符,N是一个数字。
要挂载硬盘分区到指定目录下,需要使用mount命令。
首先,我们需要创建一个目录作为挂载点。
可以选择任意一个空目录作为挂载点,比如/mnt/mydisk。
然后使用mount命令将硬盘分区挂载到该目录下:$ sudo mkdir /mnt/mydisk$ sudo mount /dev/sdb1 /mnt/mydisk这样一来,我们就将/dev/sdb1这个硬盘分区挂载到了/mnt/mydisk这个目录下。
mount方法(原创实用版3篇)目录(篇1)1.介绍 mount 方法的定义和作用2.详细说明 mount 方法的参数3.解释 mount 方法的返回值4.举例说明如何使用 mount 方法5.总结 mount 方法的特点和应用场景正文(篇1)一、介绍 mount 方法的定义和作用mount 方法是 Python 中的一个重要方法,主要用于将一个字符串或者字节对象粘贴到另一个字符串或者字节对象中。
这个方法可以使得两个字符串或字节对象组合在一起,形成一个新的字符串或字节对象。
二、详细说明 mount 方法的参数mount 方法接收两个参数:第一个参数是需要粘贴的对象,第二个参数是粘贴到的目标对象。
这两个参数可以是字符串或者字节对象。
三、解释 mount 方法的返回值mount 方法执行成功后,会返回一个新的字符串或者字节对象,这个对象就是将两个参数组合在一起后的结果。
如果执行失败,则会抛出异常。
四、举例说明如何使用 mount 方法例如,我们有两个字符串"hello"和"world",我们可以使用 mount 方法将它们组合在一起,形成一个新的字符串"helloworld"。
代码如下:```pythonresult = "hello" + "world"print(result) # 输出:helloworld```五、总结 mount 方法的特点和应用场景mount 方法是 Python 中用于粘贴字符串或字节对象的一种常用方法,具有简单易用的特点。
目录(篇2)1.介绍 mount 方法的概念和作用2.详述 mount 方法的实现过程3.展示 mount 方法的应用实例4.总结 mount 方法的优势和局限性正文(篇2)一、介绍 mount 方法的概念和作用mount 方法是一种在计算机领域中广泛应用的技术,主要用于将一个文件系统(如硬盘分区、网络共享等)挂载到另一个文件系统中。
mount命令的使用方法一、mount命令是什么1.1 mount命令就像是一座桥梁mount命令在Linux系统里可是个相当重要的角色呢。
你可以把它想象成一座桥梁,把不同的文件系统连接起来。
比如说,你的电脑里有个磁盘分区,这个分区就像是一个独立的小世界,里面存着各种各样的数据。
而mount命令就是那个能把这个小世界和Linux系统这个大环境连接起来的桥梁,这样系统就能访问这个分区里的数据啦。
1.2 它的重要性就像钥匙开锁这命令的重要性就好比钥匙开锁。
没有它,那些存储在磁盘分区里的数据就像是被锁在保险箱里,系统根本没办法获取。
就像你有一堆宝藏(数据),但没有钥匙(mount命令),你只能干瞪眼。
二、mount命令的基本使用2.1 简单挂载示例那mount命令怎么用呢?比如说你想挂载一个U盘。
首先你得知道U盘在系统里对应的设备名,通常是类似/dev/sdb1这样的名字。
然后你就可以用mount命令,像这样:mount /dev/sdb1 /mnt/usb。
这里的/mnt/usb就是你要把U盘挂载到的目录,就好比你指定了一个地方来放置从U盘这个小世界拿过来的东西。
这就像是把U盘里的东西一股脑儿地放到你指定的那个抽屉(/mnt/usb目录)里。
2.2 挂载文件系统类型有时候你还得指定文件系统类型。
就像不同的人说不同的语言一样,不同的磁盘分区可能使用不同的文件系统,像ext4、ntfs之类的。
如果是挂载一个ntfs格式的分区,你可能得这么写:mount -t ntfs /dev/sda1 /mnt/windows。
这里的 -t ntfs就是告诉系统这个分区是ntfs文件系统类型的。
这就如同告诉翻译官(系统),来的这个人(分区)说的是ntfs这种语言,你得按照这个来处理。
2.3 查看挂载情况那怎么知道已经挂载了哪些东西呢?你可以用mount命令本身,不带任何参数地运行它。
这时候它就会列出当前系统里所有已经挂载的文件系统,就像一个清单一样,清清楚楚地告诉你哪些分区挂载到哪里了。
mount方法【原创版3篇】篇1 目录1.介绍 mount 方法的定义和作用2.解析 mount 方法的参数3.详述 mount 方法的工作原理4.展示 mount 方法的实例应用5.总结 mount 方法的特点和优缺点篇1正文一、介绍 mount 方法的定义和作用在计算机编程领域,mount 方法是将一个文件系统(file system)挂载到另一个文件系统上的过程。
挂载后,原文件系统的内容将变得可访问,好像它已经成为新文件系统的一部分。
这种操作在操作系统和文件系统中非常重要,它允许用户和程序在文件系统之间共享数据。
二、解析 mount 方法的参数mount 方法通常需要两个参数:一个是要挂载的文件系统,另一个是挂载点(mount point)。
挂载点是一个目录,用于存储挂载的文件系统。
当挂载成功后,新文件系统将覆盖挂载点目录的原有内容。
三、详述 mount 方法的工作原理mount 方法的工作原理是通过系统调用(system call)将文件系统驱动程序(file system driver)加载到内存中。
文件系统驱动程序负责处理文件系统的底层操作,如读取、写入和删除数据等。
在加载文件系统驱动程序后,mount 方法会创建一个新的文件系统实例,并将其与挂载点目录关联。
这样,新文件系统就可以通过挂载点目录进行访问。
四、展示 mount 方法的实例应用举个例子,假设我们有两个文件系统:/home 和/mnt。
我们可以使用mount 方法将/home 文件系统挂载到/mnt 目录上。
这样,我们就可以通过/mnt 目录访问/home 文件系统中的数据。
在 Linux 系统中,可以使用如下命令实现这个操作:```mount /home /mnt```五、总结 mount 方法的特点和优缺点mount 方法的特点是可以将一个文件系统挂载到另一个文件系统上,实现跨文件系统的数据访问。
它的优点是能够方便地实现文件系统的共享和切换,同时也有利于文件系统的管理和维护。
AIX/HP UX/LINUX上ORACLE ASM添加磁盘一. 操作系统设置1.LINUX操作系统(1). 扫描映射到主机的磁盘需要重启服务器(两个节点都需要)(2). 通过lun id来查找新映射过来的磁盘,可以通过存储厂商提供的多路径软件来查看,两台服务器上新映射的盘的盘符必须一致HDS HDLM#/usr/DynamicLinkManager/bin/dlnkmgr view ‐luEMC POWERPATH#/usr/sbin/powermt display dev=allLINUX自带或者其它多路径软件(略)(3)磁盘设置在一个节点上执行对新加盘进行分区fdisk /dev/sddlmaxfdisk /dev/sddlmay查看分区fdisk ‐l /dev/sddlmaxfdisk ‐l /dev/sddlmay在第二个节点执行:partprobe查看分区,确认能查看到在第一个节点新建的分区fdisk ‐l /dev/sddlmaxfdisk ‐l /dev/sddlmay(4)建立vol盘在第一个节点上执行:/etc/init.d/oracleasm createdisk VOLDISK7 /dev/sddlmax1/etc/init.d/oracleasm createdisk VOLDISK8 /dev/sddlmay1查看/etc/init.d/oracleasm createdisk listdisks在第二个节点执行:/etc/init.d/oracleasm scandisks然后查看:/etc/init.d/oracleasm listdisks2.AIX操作系统(1). 扫描映射到主机的磁盘#cfgmgr(2). 通过lun id来查找新映射过来的磁盘,可以通过存储厂商提供的多路径软件来查看, 两台服务器上新映射的盘的盘符必须一致HDS HDLM#/opt/DynamicLinkManager/bin/dlnkmgr view ‐luEMC POWERPATH#/usr/sbin/powermt display dev=allAIX MPIO(略)(3)磁盘设置修改磁盘属性/usr/sbin/chdev ‐l hdisk112 ‐a reserve_policy=no_reserve/usr/sbin/chdev ‐l hdisk113 ‐a reserve_policy=no_reserve修改权限#chown oracle:dba /dev/rdisk/disk112#chown oracle:dba /dev/rdisk/disk113#chmod 660 /dev/rdisk/disk112#chmod 660 /dev/rdisk/disk113PS:以上操作两个节点都需要要操作3. HP UX 操作系统(1). 扫描映射到主机的磁盘#ioscan ‐fndisk(2). 通过lun id来查找新映射过来的磁盘,可以通过存储厂商提供的多路径软件来查看, 两台服务器上新映射的盘的盘符必须一致hp ux 11.31不支持其它的多路径软件,可以通过一个工具inqraid.hpux来查看,具体执行: HPUX下Lun对应关系查看方式如下:将工具inqraid.hpux以二进制模式ftp上传到主机/tmp目录,以root用户执行以下命令a>cd /tmpb>chmod +x /tmp/inqraid.hpuxc>ioscan ‐fun | grep ‐e rdisk ‐e rdsk | ./inqraid.hpux ‐CLI ‐fxd>ioscan ‐fun | grep ‐e rdisk ‐e rdsk | ./inqraid.hpux ‐CLI ‐fx ‐fge>ioscan ‐fun | grep ‐e rdisk ‐e rdsk | ./inqraid.hpux ‐CLI ‐fx ‐fg>1.txtf>cat 1.txt‐h可以看到更多选项。
Linux系统中的mount挂载磁盘命令使⽤教程功能:加载指定的⽂件系统。
语法:mount [-afFhnrvVw] [-L<标签>] [-o<选项>] [-t<⽂件系统类型>] [设备名] [加载点]⽤法说明:mount可将指定设备中指定的⽂件系统加载到Linux⽬录下(也就是装载点)。
可将经常使⽤的设备写⼊⽂件/etc/fstab,以使系统在每次启动时⾃动加载。
mount加载设备的信息记录在/etc/mtab⽂件中。
使⽤umount命令卸载设备时,记录将被清除。
常⽤参数和选项:-a 加载⽂件/etc/fstab中设置的所有设备。
-f 不实际加载设备。
可与-v等参数同时使⽤以查看mount的执⾏过程。
-F 需与-a参数同时使⽤。
所有在/etc/fstab中设置的设备会被同时加载,可加快执⾏速度。
-h 显⽰在线帮助信息。
-L<标签> 加载⽂件系统标签为<标签>的设备。
-l 显⽰已加载的⽂件系统列表(同直接执⾏mount)-n 不将加载信息记录在/etc/mtab⽂件中。
-o<选项> 指定加载⽂件系统时的选项。
有些选项也可在/etc/fstab中使⽤。
这些选项包括:async 以⾮同步的⽅式执⾏⽂件系统的输⼊输出动作。
atime 每次存取都更新inode的存取时间,默认设置,取消选项为noatime。
auto 必须在/etc/fstab⽂件中指定此选项。
执⾏-a参数时,会加载设置为auto的设备,取消选取为noauto。
defaults 使⽤默认的选项。
默认选项为rw、suid、dev、exec、anto nouser与async。
dev 可读⽂件系统上的字符或块设备,取消选项为nodev。
exec 可执⾏⼆进制⽂件,取消选项为noexec。
noatime 每次存取时不更新inode的存取时间。
noauto ⽆法使⽤-a参数来加载。
中银国际证券创建ASM磁盘组只有一个节点mount
【处理时间】2016年11月
【客户名称】中银国际证券
【主机信息】要有详细的硬件描述、数据库版本描述
主机:p770
操作系统:AIX6.1
数据库:Oracle 11.2.0.4 PSU4
【业务系统】UF20经营管理系统
【关键字】ASM磁盘组,ORA-15040,AIX
【处理人员】孟东
【问题说明】现象:
由于空间不足,客户需要新增加ASM磁盘组以便满足数据存储需求,所以他们存储工程师新分配了
lun,并映射到两台主机,结果在修改好权限,清楚pvid之后,创建ASM 磁盘组时,只在一个节
点mount起来,另一个节点没有mount,手动执行mount操作后,报ORA-15040:diskgroup is
incomplete
事件分析
开始看到ORA-15040:diskgroup is incomplete这个错误,以为存储有问题,导致磁盘组无法挂载,但是节点一正常挂载了,而且这个错误一般磁盘头损坏会报,况且这是新添加的磁盘组,所以暂时排除了磁盘损坏。
此时想到之前主机关于hdiskN的报错信息:
这个问题出现之前,在主机日志中出现了告警日志,如下:
根据主机日志中的内容发现,所报内容hdiskN都是最近新添加的lun,报错信息显示所请求的操作不被允许。
这个问题跟主机工程师确认过,应该没有大问题的,而且所有磁盘都能在两台主机看到且能正常访问。
主机上的报错只有在操作新添加的磁盘时才会报错。
排查良久都没有找到问题,于是想一步步从初装的步骤来找问题:
1、两边lun是否一致
2、权限是否更改
3、Pvid是否清除
4、是否reserve_policy是否更改
最后发现是磁盘的reserve_policy没有更改,这个参数控制磁盘共享性,由于RAC需要共享磁盘,不能被单独主机锁定,所以需要更改
使用如下命令更改和查看
/usr/sbin/chdev -l hdiskn -a reserve_policy=no_reserve
/usr/sbin/lsattr -E -l hdiskn
解决方案
将所有新添加的磁盘reserve_policy修改为no_reserve,然后重新创建ASM磁盘组,挂载成功。
后续跟踪
后续使用正常。