Oracle ASM磁盘组的常用操作
1.查看现有磁盘组信息
select group_number gno,name,state,type,total_mb,free_mb,required_mirror_free_mb rmfmb,usable_file_mb ufmb from v$asm_diskgroup;

2.查看磁盘信息
select group_number gno,name,failgroup fgno,state,total_mb,free_mb,header_status from v$asm_disk;

方法二:
select name,path,state,mount_status,header_status from v$asm_disk;

ignored状态也是不正常的。
closed表示磁盘未被当前实例使用,member表示这个磁盘已经是某个diskgroup的成员了
方法三:fdisk -l查看磁盘状态
查看磁盘组列表
[root@racdb1 /]# oracleasm listdisks
ARCH1
ARCH2
ARCH3
DATA1
DATA2
DATA3
DATA4
OCR1
OCR2
OCR3
在节点2查看
[root@racdb2 /]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@racdb2 /]# oracleasm listdisks
[root@racdb2 /]#pwd
/dev/oracleasm/disk/
3.查看ASM磁盘路径
select group_number,name,path,state from v$asm_disk;

红色框中为新添加的磁盘,未分配的磁盘group为0,NAME为空
4.添加磁盘到磁盘组(+ASM实例中操作)
SQL> alter diskgroup ARCH add disk '/dev/oracleasm/disks/ARCH3';
Diskgroup altered.
补充:
SQL> alter diskgroup ARCH add disk '/dev/oracleasm/disks/ARCH3' rebalance power 10;
因为磁盘要做rebalance,最好在rebalance完后再使用磁盘组
select * from v$asm_operation;
查看磁盘组操作
SQL> select * from v$asm_operation;

5.查看磁盘状态
select group_number,name,path,state from v$asm_disk

红色部分自动分配了NAME,并制定了ARCH组对应的组号
6.磁盘组的创建和删除
创建磁盘组
create diskgroup dg3 normal redundancy disk 'ORCL:VOL9','ORCL:VOL10';
删除磁盘
SQL> alter diskgroup dg1 drop disk VOL9;
Diskgroup altered.
取消删除
alter diskgroup dg1 undrop disks;
调整大小
ALTER DISKGROUP DG1 RESIZE DISK VOL4 SIZE 1024 M
7.unmount和mount磁盘组
SQL> alter diskgroup dg3 dismount;
Diskgroup altered.
SQL> select group_number gno,name,state,type,total_mb,free_mb,required_mirror_free_mb rmfmb,usable_file_mb ufmb from v$asm_diskgroup;
GNO NAME STATE TYPE TOTAL_MB FREE_MB RMFMB UFMB
---------- ------------------------------ ---------------------- ------------------------------ ---------- ---------- ---------- ----------
1 DG1 MOUNTED NORMAL 4076 575 879 -152
2 DG2 MOUNTED NORMAL 4076 3531 139 1696
0 DG3 DISMOUNTED
SQL> alter diskgroup dg3 mount;
Diskgroup altered.
8.查看磁盘组属性
SELECT dg.name AS diskgroup,SUBSTR(a.name,1,18) AS name,
SUBSTR(a.value,1,24) AS value, read_only FROM V$ASM_DISKGROUP_STAT dg,V$ASM_ATTRIBUTE a
WHERE dg.group_number = a.group_number;

9.查看磁盘组兼容属性
SQL> SELECT name,COMPATIBILITY,DATABASE_COMPATIBILITY FROM V$ASM_DISKGROUP_STAT;

10.查看磁盘客户端信息
SQL> SELECT dg.name AS diskgroup,SUBSTR(c.instance_name,1,12) AS instance,
SUBSTR(c.db_name,1,12) AS dbname,SUBSTR(c.SOFTWARE_VERSION,1,12) AS software,
SUBSTR(c.COMPATIBLE_VERSION,1,12) AS compatible
FROM V$ASM_DISKGROUP_STAT dg, V$ASM_CLIENT c
WHERE dg.group_number = c.group_number;

11.查看磁盘访问控制信息
SQL> SELECT dg.name AS diskgroup, u.group_number,u.user_number, u.os_id, u.os_name
FROM V$ASM_DISKGROUP_STAT dg, V$ASM_USER u
WHERE dg.group_number = u.group_number AND dg.name ='DATA';
12.查看磁盘访问控制组信息
SQL> SELECT dg.name AS diskgroup, ug.group_number,ug.owner_number, u.os_name,
ug.usergroup_number, ug.name FROM V$ASM_DISKGROUP_STAT dg, V$ASM_USER u, V$ASM_USERGROUP ug
WHERE dg.group_number = ug.group_number AND dg.name ='DATA'
AND ug.owner_number = u.user_number;
13.查看数据分布信息
SQL> SELECT dg.name AS diskgroup, f.file_number, f.primary_region,f.mirror_region, f.hot_reads,f.hot_writes, f.cold_reads, f.cold_writes
FROM V$ASM_DISKGROUP_STAT dg, V$ASM_FILE f
WHERE dg.group_number = f.group_number and dg.name ='DATA';
14.ASM 磁盘的相关视图
v$asm_disk(_stat) --查看磁盘及其状态信息
v$asm_diskgroup(_stat) --查看磁盘组及其状态信息
v$asm_operation --查看当前磁盘的操作信息
v$asm_client --返回当前连接的客户端实例信息
v$asm_file --返回asm文件的相关信息
v$asm_template --返回asm文件样本的相关信息
v$asm_alias --返回asm文件的别名信息
Oracle ASM磁盘组的常用操作的更多相关文章
- Oracle ASM 磁盘组基础知识整理(收藏版)
转至:https://cloud.tencent.com/developer/article/1494403 为什么要写这么一篇基础知识呢?还是有那么一点点原因的,不是胡编乱造还真是有真实存在的事件的 ...
- 11G ORACLE RAC DBCA 无法识别asm磁盘组
ASM磁盘无法识别几种现象: 1) gi家目录或者其子目录权限错误 2)asm磁盘的权限错误 3)asm实例未启动或者asm磁盘组没有mount上 4)asm磁盘组资源没有在线 5)oracle用户的 ...
- 案例:Oracle报错ASM磁盘组不存在或没有mount
案例:Oracle报错ASM磁盘组不存在或没有mount 环境:RHEL 6.5 + Oracle Standby RAC 11.2.0.4 我做Standby RAC实验时,在恢复控制文件时,报错无 ...
- 转://Oracle 11gR2 ASM磁盘组管理
一.环境.[grid@rhel2 ~]$ cat /etc/issueRed Hat Enterprise Linux Server release 5.5 (Tikanga) Kernel \r o ...
- Oracle DBCA工具检测不到ASM磁盘组
本例环境: 操作系统OEL 6.5 数据库版本:11.2.0.4 问题:DBCA建库的时候,检测不到ASM磁盘组 因素一:可能是在授权的时候执行了 chown –R 775 /u01/app等修改权限 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.5.安装Grid,创建ASM磁盘组空间不足
因之前分区时,分区的Last cylinder的值选了“1”,导致创建磁盘组空间不足.解决办法是先删除分区,重新创建分区并删除ASM磁盘,然后重建ASM磁盘 1. 先删除分区,重新创建分区: 1)查询 ...
- Oracle 11gR2 RAC DBCA无法识别ASM磁盘组(ORA-19504,ORA-15045,ORA-17502,ORA-15081)
ORA-19504: failed to create file "+DATA" ORA-15045: ASM file name '+DATA' is not in refere ...
- Oracle RAC环境下ASM磁盘组扩容
生产环境注意调整以下参数: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
- bay——Oracle RAC环境下ASM磁盘组扩容.docx
https://www.cnblogs.com/polestar/p/10115263.html Oracle RAC环境下ASM磁盘组扩容 生产环境注意调整以下参数: +++++++++++++++ ...
- 单机静默安装GI软件并创建ASM实例和ASM磁盘组
环境:RHEL 6.4 + Oracle 11.2.0.4 需求:单机静默安装GI软件并创建ASM实例和ASM磁盘组,为后续迁移数据库文件到ASM做准备 1. 安装配置GI软件 2. 创建ASM实例 ...
随机推荐
- swagger TypeError: Failed to fetch
最近开发一个项目,项目接口规范是swagger,初次使用swagger遇见很多问题,通过写博记录在项目中遇见的swagger各种情况 我项目中解决方法: 改为: 需要与自己在laravel 框架中e ...
- Qt设置程序图标
修改.pro文件添加一下代码:要求.pro文件和.ico文件在同一文件夹下 RC_ICONS = xxx.ico (你的程序图标)最后重新构建一次即可
- python常用的六个字符串处理方法
1.upper(将小写字母转换为大写) 语法: str.upper() 参数: NA 实例: a = 'abc' b = a.upper() print(b) 结果: ABC 2.lower(将小写字 ...
- mysql(insert + str_to_date)
str_to_date(date_str, '%Y-%m-%d %H:%i:%s') 替换为 substring_index(date_str, '.', 1); str_to_date(date_s ...
- 12组-Beta冲刺-2/5
一.基本情况 队名:字节不跳动 组长博客:https://www.cnblogs.com/147258369k/p/15594989.html Github链接:https://github.com/ ...
- TCP&UDP测试工具使用方式方法
第一项:测试TCP 步骤1:首先需要一台电脑上建立一个TCP服务器.并设置一个端口号如下图60003即可.并开启服务 步骤2:在另外一台电脑上,创建一个客户端连接,如下图.输入服务器的IP地址和端口号 ...
- 网络-7 IPv6(下)
Ipv6实验 一.华为 思科与华为在接口启用ipv6 思科会自动产生local地址 华为不会自动产生local地址 以太网接口有mac地址,所以肯定是有eui64 serial接口是没有mac地址,他 ...
- centos7上安装使用docker环境
系统环境准备: docker 运行在centos7上,要去系统为64位.系统内核版本为3.10以上 1.查看系统版本:cat/etc/redhat-release 2.查看系统内核版本:uname - ...
- Unity 关于可寻址资源系统Addressables的使用和理解(一) 准备工作
一.打开Unity的PackageManager,安装Addressables包 二.打开分组面板,对未来要分类的资源包进行分组,并对组进行设置. 1.菜单栏选择Window/AssetManagen ...
- oracle之如何获取执行计划方法
1.什么是执行计划 为了执行sql语句,Oracle在内部必须实现许多步骤,这些步骤可能是从数据库中物理检索数据行,或者用某种方法来准备数据行等,接着Oracle会按照一定的顺序一次执行这些步骤,最后 ...