ASM磁盘组删除DISK操作

简介: ASM接触了很长时间,从磁盘组中删除磁盘的操作还是第一次。     没想到这么简单的操作,由于不熟悉还碰到了两个小问题。

ASM接触了很长时间,从磁盘组中删除磁盘的操作还是第一次。

 

 

没想到这么简单的操作,由于不熟悉还碰到了两个小问题。

[oracle@dbserver1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.2.0 Production on Tue Aug 9 10:08:06 2011

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options

SQL> set pages 100 lines 120
SQL> select group_number, name, state, type, total_mb, free_mb
  2  from v$asm_diskgroup;

GROUP_NUMBER NAME                           STATE       TYPE     TOTAL_MB    FREE_MB
------------ ------------------------------ ----------- ------ ---------- ----------
           1 DATA_AU1M                      CONNECTED   EXTERN    1953124       7430
           2 DATA_AU2M                      CONNECTED   EXTERN    1953124       7384
           3 DATA_AU4M                      CONNECTED   EXTERN    1953124       7304
           4 DATA                           CONNECTED   EXTERN    3906248    3898966

SQL> col path format a30
SQL> col name format a30
SQL> select disk_number, path, name, total_mb, free_mb
  2  from v$asm_disk
  3  where group_number = 4;

DISK_NUMBER PATH                      NAME                        TOTAL_MB    FREE_MB
----------- ------------------------- ------------------------- ---------- ----------
          1 /dev/asm-disk5            DATA_0001                    1953124    1949486
          0 /dev/asm-disk4            DATA_0000                    1953124    1949480

SQL> alter diskgroup data drop disk '/dev/asm-disk5';
alter diskgroup data drop disk '/dev/asm-disk5'
*
ERROR at line 1:
ORA-15000: command disallowed by current instance type

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options

由于当前连接的是数据库,显然不能对ASM实例中的磁盘组进行操作,下面连接ASM实例:

[oracle@dbserver1 ~]$ su - grid
Password:
[grid@dbserver1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.2.0 Production on Tue Aug 9 10:12:39 2011

Copyright (c) 1982, 2010, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Automatic Storage Management option

SQL> set pages 100 lines 120
SQL> select instance_number, instance_name from v$instance;

INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
              1 +ASM

SQL> alter diskgroup data drop disk '/dev/asm-disk5';
alter diskgroup data drop disk '/dev/asm-disk5'
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15260: permission denied on ASM disk group


SQL> alter diskgroup data drop disk data_0001;
alter diskgroup data drop disk data_0001
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15260: permission denied on ASM disk group

开始看到这个错误还确实疑惑了一下,怎么可能没有权限。有在操作系统上检查了磁盘的权限,也没有任何问题。

检查Oracle文档的错误信息后发现,由于习惯了适用sysdba来处理,忽略了当前是11gASM,应该用sysasm来登录:

SQL> conn / as sysasm
Connected.
SQL> alter diskgroup data drop disk data_0001;

Diskgroup altered.

SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;

DISK_NUMBER STATE    NAME                             TOTAL_MB    FREE_MB
----------- -------- ------------------------------ ---------- ----------
          1 DROPPING DATA_0001                         1953124    1950842
          0 NORMAL   DATA_0000                         1953124    1948124

SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;

DISK_NUMBER STATE    NAME                             TOTAL_MB    FREE_MB
----------- -------- ------------------------------ ---------- ----------
          1 DROPPING DATA_0001                         1953124    1951434
          0 NORMAL   DATA_0000                         1953124    1947532

SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;

DISK_NUMBER STATE    NAME                             TOTAL_MB    FREE_MB
----------- -------- ------------------------------ ---------- ----------
          1 DROPPING DATA_0001                         1953124    1952556
          0 NORMAL   DATA_0000                         1953124    1946410

SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;

DISK_NUMBER STATE    NAME                             TOTAL_MB    FREE_MB
----------- -------- ------------------------------ ---------- ----------
          1 DROPPING DATA_0001                         1953124    1953096
          0 NORMAL   DATA_0000                         1953124    1945870

SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;

DISK_NUMBER STATE    NAME                             TOTAL_MB    FREE_MB
----------- -------- ------------------------------ ---------- ----------
          0 NORMAL   DATA_0000                         1953124    1945854

SQL> select group_number, disk_number, path, name, state, total_mb, free_mb     
  2  from v$asm_disk
  3  where path = '/dev/asm-disk5';

GROUP_NUMBER DISK_NUMBER PATH            NAME       STATE      TOTAL_MB    FREE_MB
------------ ----------- --------------- ---------- -------- ---------- ----------
           0           1 /dev/asm-disk5             NORMAL            0          0

可以看到,虽然删除操作执行完成,但是磁盘并没有真正被删掉,ASM在后台尝试将磁盘上的数据挪到其他可用磁盘中,这时磁盘的状态为DROPPING

当后台数据同步的操作完成,磁盘的组信息被清除,磁盘恢复STATE状态。这时这个磁盘就从ASM中被彻底删除。

 

 

相关文章
|
4月前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。
|
8月前
|
Java API Android开发
ASM 框架:字节码操作的常见用法(生成类,修改类,方法插桩,方法注入)
ASM 框架:字节码操作的常见用法(生成类,修改类,方法插桩,方法注入)
160 0
|
9月前
|
SQL
How To Resize An ASM Disk? (Doc ID 470209.1)
1) Please backup the database(s) contained inside the associated diskgroup. 2) Then shutdown the databases contained inside the associated diskgroup. 3) Dismount the associated diskgroup to verify no client database connections are accessing this specific diskgroup: SQL> alter diskgroup <diskgro
68 2
|
9月前
|
存储 Oracle 关系型数据库
RAC创建ASM磁盘组时配置多路径和UDEV
RAC创建ASM磁盘组时配置多路径和UDEV
1821 7
|
9月前
|
Oracle 关系型数据库
oracle asm 磁盘显示offline
oracle asm 磁盘显示offline
405 2
|
9月前
|
文字识别 运维 Oracle
asm 磁盘故障处理日志
asm 磁盘故障处理日志
109 2
|
9月前
|
存储 Oracle 关系型数据库
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
oracle数据库ASM磁盘组掉线,ASM实例不能挂载。数据库管理员尝试修复数据库,但是没有成功。
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
RAC 增加4块 asm 磁盘
增加磁盘之前的asm状态
112 0
|
Oracle 关系型数据库 测试技术
GoldenGate 对asm磁盘的访问的两种方式:asm实例连接和API(dblogreader)两种方式的对比
GoldenGate在抽取数据的时候要读取online redo里的数据,online redo很多时候是储存在asm磁盘里,对asm磁盘的访问有两种方式
213 0
创建asm disk 磁盘组出错! ORA-15018 And ORA-15107 (Doc ID 2678808.1)
ORA-15018: diskgroup cannot be created ORA-15107: missing or invalid ASM disk name
181 0