欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle ASM 如何添加新磁盘到磁盘

程序员文章站 2022-05-14 14:47:15
...

适用平台: AIX hp linux win Solaris 适用版本:所有数据库10.1.0.2 to12.1.0.1 适用于 rac和 standalone 以RAC 环境为例: 假设

适用平台: AIX hp linux win Solaris

适用版本:所有数据库10.1.0.2 to12.1.0.1

适用于 rac和 standalone

以RAC 环境为例: 假设 Oracle 为oracle rdbms 属组;grid 为 gi 属组;

For ASMLIB users:

RAC 环境 gi owner 执行以下命令

1、# /etc/init.d/oracleasm scandisks #( root用户执行)

$> id

$> /etc/init.d/oracleasm listdisks

$> /etc/init.d/oracleasm querydisk

所有节点都要执行;

2、在操作系统层面检查磁盘是否可以读写(每个节点)(oracle 用户或者grid用户)

# raw device

$> dd if=/dev/raw/raw1 of=/dev/null count=100 bs=8192

# ASMLIB device

$> dd if=/dev/oracleasm/disks/PRODA07 of=/dev/null count=100 bs=8192

# raw device

$> dd if=/dev/rdsk/c1t3d0s6 of=/dev/null count=100 bs=8192

3、适用kfed 验证磁盘是否为候选盘;

kfed read |grep kfbh.type

kfbh.type: 0 ; 0x002: KFBTYP_INVALID 如果看到这么一个结果,表明该磁盘是可用的。

4、创建临时磁盘组,主要是用ASM 实例来检验下所有要加的盘没有问题,,即使出问题,也不会影响原来的生产系统。虽然要检查的步骤比较多,比较烦,但是对于生产系统来说出不了任何意外。

CREATE DISKGROUP lixora EXTERNAL REDUNDANCY DISK '/dev/rhdisk*';

5、检查刚创建的dg 是否已经自动mount 了?

SELECT STATE, NAME FROM V$ASM_DISKGROUP;

6、如果没有mount,尝试手工mount

ALTER DISKGROUP TEST MOUNT;

---确认dg状态

SELECT STATE, NAME FROM V$ASM_DISKGROUP;

7、如果step6 查询lixora成功mount(如果rac ,则确保每个ASM实例都成功mount)

则说明我们需要添加的asm 盘都正常的,可以正常使用。那么我们就可以把他们加到生产的dg中了。

-----卸载dg(在ASM instance中执行这个命令)

alter diskgroup test dismount;

----删除测试用临时dg (在ASM instance 中执行这个命令)

DROP DISKGROUP TEST;

8、到这里就可以吧候选盘加到生产的dg里了。

ALTER DISKGROUP ADD DISK '';

Standalone 环境也是一样的,同样建议执行上述测试步骤。

如何修改ASM的sys密码

如何将ASM中的数据文件复制到操作系统中

Oracle 11g RAC ASM磁盘全部丢失后的恢复

Oracle 11g从入门到精通 PDF+光盘源代码

RHEL6 ASM方式安装Oracle 11g R2

Oracle 10g 手工创建ASM数据库

Ubuntu 12.04(amd64)安装完Oracle 11gR2后各种问题解决方法

如何修改Oracle 10g ASM的sys密码