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

查看oracle硬盘状态

原创 百分 2023-10-05
222

规划ASM DISK GROUP:

1. 每个磁盘组里的磁盘应该大小、性能、新旧等一致,不能有太大差距

2. 对database files 和 fast recovery area 分别创建不同的diskgroup。 一般来说我们也可以把备份文件存放到FRA里。

所以Oracle 建议我们不要创建太多的diskgroup,2组就够了,一组DATA,一组FRA.

ORACLE ASM 在磁盘组,磁盘和文件的个数限制如下:

(1)最多63个disk groups

(2)最多10000个ASM disks

(3)每个disk group里最多1百万个文件。

非Exadata 存储的情况下,ASM 存储大小限制: (若是exadata,则容量*2倍)

(1)支持的每个ASM disk 最大容量是2 TB。

(2)整个ASM存储系统最大支持的空间是20 PB。

查看当前asm磁盘状态信息 (grid用户执行)

1. --查看有多少asm磁盘

node1-> kfod disk=all

2. --查看asm磁盘组

node1-> kfod op=groups

3. 查看磁盘与磁盘组的对应关系

node1-> kfod ds=true di=all

mount or dismount 磁盘组

注意:

当我们dismount 一个disk group的时候,该group上有文件正在打开,我们的的diskgroup 操作就会失败,除非我们指定FORCE选项,强制dismount。

手工的进行这些操作,语法如下:

ALTER DISKGROUP...MOUNT

ALTER DISKGROUP...DISMOUNT

若部分磁盘不可用,怎么办?

当disk 出现故障时,会被标记为offline,对于offline 的disk,是不能被ASM 访问的。当disk 变成offline 的时候,ASM会计算这个时间,当disk 在diskgroup的DISK_REPAIR_TIME参数指定的时间内没有被修复,那么该disk 就会永久的从diskgroup中drop掉。

若disk group的冗余级别是Normal 或者是high 的时候,如果diskgroup 在我们挂载这个diskgroup的时候,如果有部分disk 不可用,那么就必须使用MOUNT FORCE 来挂载。因此,当我们的disk 出现问题,我们还没有修复,这时候我们想以reduced redundancy 的方式临时的挂载diskgroup,那么就可以使用mount force。

SQL> alter diskgroup XXXX dismount force;

注意:

要想MOUNT FORCE 能挂载成功,也必须保证disk group中所有的文件至少有一份extents。

检查磁盘组 metadata 的内部一致性

背景:

每个diskgroup、disk都有自己的metadata。

在diskgroup处于mount状态下,可以检查diskgroup 中某个特定的文件,特定的disk 或者所有disk,或者指定的failure。

Check 子句会执行如下操作:

(1)验证disk的一致性。

(2)交叉效验所有文件的extent maps 和allocation tables 是否一致。

(3)检查alias metadata directory和file directory 关联是否正确。

(4) 验证alias directory tree 是否正确link。

(5)检查Oracle ASM metadata directories是否有不能读取的allocated blocks

命令:

SQL> ALTER DISKGROUP FRA CHECK ALL ( REPAIR -- 可以指定是否修复,默认不修复 );

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论