一、 ASM_POWER_LIMIT 参数

 这个参数 ASM_POWER_LIMIT 参数控制 ASM 后台进程 ARBx 的数量。ARBx 进程用来进行 ASM 磁盘数据重新分布打散。ASM_POWER_LIMIT 取值 从 0 到 11(据说从 10gR2 开始可以设置为 0 ). 当新添加磁盘或者删除磁盘后,ASM 会启动 ARBx 进行 IO 分散操作,该参数值越大,io 越大。这是个非常消耗资源的动作,所以一定要选择系统空闲的时候进行。

ASM_POWER_LIMIT 参数官方描述:

ASM_POWER_LIMIT specifies the maximum power on an Automatic Storage Management instance for disk rebalancing. The higher the limit, the faster rebalancing will complete. Lower values will take longer, but consume fewer processing and I/O resources.

If the POWER clause of a rebalance operation is not specified, then the default power will be the value of ASM_POWER_LIMIT.

根据 逻辑 cpu个数 与 负载情况 ,确定 asm_power_limit 参数。
1.1 查看逻辑cpu个数
$ cat /proc/cpuinfo |grep "processor"|wc -l
48

1.2 grid用户登录,设置 asm_power_limit 参数
$ sqlplus / as sysasm
SQL> show parameter asm_power_limit

NAME TYPE VALUE
------------------------------------ --------------- ------------------------------
asm_power_limit integer 1

1.3 修改 asm_power_limit 参数
SQL> alter system set asm_power_limit=20 sid= '*' scope=both;

1.4 添加或者删除asm磁盘

1.5 还原 asm_power_limit 默认值
SQL> alter system set asm_power_limit=1 sid= '*' scope=both;

二、 添加磁盘组磁盘成员 (最好保证添加的磁盘成员size大小与该磁盘组其他成员size大小一致,否则浪费最大可用空间)

1.grid用户进入asm环境

node1-> sqlplus / as sysasm

2.查看当前环境的信息
SQL>
col name for a35;
select group_number,name from v$asm_diskgroup;

GROUP_NUMBER NAME
------------ -----------------------------------
3 DATA
1 GRIDDG
2 FLASH

SQL> select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;

GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ----------------------------------- ---------- ----------
2 FLASH_0000 15360 14211
1 GRIDDG_0001 1024 863
1 GRIDDG_0000 1024 830
3 DATA_0000 43008 40613

3.增加一个asm磁盘 ,之后磁盘做 rebalance 操作

SQL> ALTER DISKGROUP DATA ADD DISK '/dev/asm-data02';

Diskgroup altered.

-- 如果查询出来有结果,说明磁盘数据迁移没有结束。如果查询出来结束输出为 no rows selected ,说明磁盘数据迁移已经结束。
SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION STATE POWER ACTUAL SOFAR
------------ --------------- ------------ ---------- ---------- ----------
EST_WORK EST_RATE EST_MINUTES
---------- ---------- -----------
ERROR_CODE
--------------------------------------------------------------------------------
3 REBAL RUN 1 1 195
300 782 0

4. 查询磁盘情况
SQL> col name for a40
SQL> select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;

GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ---------------------------------------- ---------- ----------
3 DATA_0000 43008 40913
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863
3 DATA_0001 6144 5842

SQL> select * from v$asm_operation;

no rows selected > 磁盘 rebalance 操作结束

三、 删除磁盘组磁盘成员

3.0 查询磁盘信息 ( 删除磁盘组的一个磁盘成员,但必须确保删除该磁盘成员之后,该磁盘组的其他成员有足够空间做 rebalance )
SQL> col name for a40
SQL> select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;

GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ---------------------------------------- ---------- ----------
3 DATA_0000 43008 40913
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863
3 DATA_0001 6144 5842

3.1 开始删除磁盘 DATA_0001 , 磁盘做 rebalance 操作
SQL> alter diskgroup DATA drop disk DATA_0001;

Diskgroup altered.

3.2 查看磁盘情况
SQL>
col name for a45;
select group_number, name, TOTAL_MB, FREE_MB from V$asm_disk_stat;

GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ --------------------------------------------- ---------- ----------
3 DATA_0000 43008 40613
2 FLASH_0000 15360 14211
1 GRIDDG_0000 1024 830
1 GRIDDG_0001 1024 863

说明: 一旦重新调整删除了所有的分配单元,那么这个磁盘就从这个磁盘组中删除了。

3.3 查看磁盘 rebalance 操作是否结束,如果查询输出结果为 no rows selected ,表示已经 rebalance 结束。
SQL> select * from v$asm_operation;
no rows selected
SQL>
col state for a10;
col path for a20;
SQL> select path,group_number, disk_number,mount_status,state from v$asm_disk;

PATH GROUP_NUMBER DISK_NUMBER MOUNT_STATUS STATE
-------------------- ------------ ----------- --------------------- ----------
/dev/asm-data02 0 0 CLOSED NORMAL
/dev/asm-date 3 0 CACHED NORMAL
/dev/asm-flash 2 0 CACHED NORMAL
/dev/asm-ocr 1 0 CACHED NORMAL
/dev/asm-vd 1 1 CACHED NORMAL

asm添加删除磁盘的更多相关文章

  1. linux命令之添加删除磁盘分区

    之前已经写过df和fdisk的区别了,df可以显示当前已经挂载的磁盘分区,df -T可以额外显示文件系统类型 fdisk -l可以显示出所有挂载未挂载的分区,但不显示文件类型 在我的虚拟机上有一块分配 ...

  2. oracle 11gR2 ASM添加和删除磁盘

    一.环境 oracle 11gR2 RAC + Oracle Linux Server release 5.9 二.实施 备注:安全起见,操作之前停数据库实例.ASM实例 1.节点1.2磁盘信息 -- ...

  3. 添加删除ASM磁盘

    创建磁盘: [root@kel ~]# oracleasm createdisk KEL3 /dev/sdf1 Writing disk header: done Instantiating disk ...

  4. ASM磁盘组删除磁盘

    ASM磁盘组删除磁盘 [oracle@dbserver1 ~]$ su - gridsqlplus / as sysasmConnected.SQL> alter diskgroup data ...

  5. 如何恢复,迁移,添加, 删除 Voting Disks

    如何恢复,迁移,添加, 删除 Voting Disks恢复流程 在11gR2 之前,我们可以直接直接使用dd命令对voting disk进行备份.DD示例 备份votedisk盘:[root@raw1 ...

  6. OCR/Vote disk 维护操作: (添加/删除/替换/移动) (文档 ID 1674859.1)

    适用于: Oracle Database - Enterprise Edition - 版本 10.2.0.1 到 11.2.0.1.0 [发行版 10.2 到 11.2]本文档所含信息适用于所有平台 ...

  7. WPF下的Richtextbox中实现表格合并,添加删除行列等功能

    .Net中已有现在的方法实现这些功能,不过可能是由于未完善,未把方法公开出来.只能用反射的方法去调用它. 详细信息可以查看.Net Framework 的源代码 http://referencesou ...

  8. 教程:使用Diskpart创建、扩展或删除磁盘分区

    在Windows Server环境下进行基本的磁盘操作时,管理员可以使用Disk Partition Utility或Diskpart等工具.后者是一个命令行解释器,可作为磁盘管理工具. 管理员可以使 ...

  9. VMWare EXSi 添加新磁盘时 报错 HostStorageSystem.ComputeDiskPartitionInfo 的处理

    给 VMWare EXSi 添加新磁盘时报错 : Call "HostStorageSystem.ComputeDiskPartitionInfo" for object &quo ...

随机推荐

  1. R语言包翻译

    Shiny-cheatsheet 作者:周彦通 1.安装 install.packages("shinydashboard")  2.基础知识 仪表盘有三个部分:标题.侧边栏,身体 ...

  2. udl文件测试数据库连接

    直接建一个udl后缀的文件(新建txt文件,改后缀) 然后会默认有个小电脑标志,双击打开就可以看到,可以用来配置数据库连接信息,可以测试连接,如果连接通过,可以再用记事本打开这个udl文件,里面就有生 ...

  3. 枚举:enum——初写

    入门的时候,针对某一字段状态的判断,一开始是在前端用if else 判断,有一些弊端:①把内置的code暴露给用户②if else最好不要超过3层③前端很长一段冗余判断不规范后改进使用枚举,在后台进行 ...

  4. QPS的计算方法

    每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量. 原理:每天80%的访问集中在20%的时间里,这20%时 ...

  5. 【css技能提升】css高级技巧

    本文是一个帮你提升 CSS 技巧的收藏集. 使用CSS复位 CSS复位可以在不同的浏览器上保持一致的样式风格.您可以使用CSS reset 库Normalize等,也可以使用一个更简化的复位方法: * ...

  6. 简单svg动画实现

    一.将svg嵌入到html中 svg是指可伸缩矢量图形,它使用XML格式定义图像.在html中可以使用<svg>标签直接嵌入svg代码,例如: <svg version=" ...

  7. Python爬虫小白---(二)爬虫基础--Selenium PhantomJS

    一.前言   前段时间尝试爬取了网易云音乐的歌曲,这次打算爬取QQ音乐的歌曲信息.网易云音乐歌曲列表是通过iframe展示的,可以借助Selenium获取到iframe的页面元素, 而QQ音乐采用的是 ...

  8. Python3 从入门到出门

    引:此文是自己学习python过程中的笔记和总结,适合有语言基础的人快速了解python3和没基础的作为学习的大纲,了解学习的方向:笔记是从多本书和视频上学习后的整合版. (一)初识python 1. ...

  9. 安装 Node 和 gulp

    gulp 是基于 node 实现的,那么我们就需要先安装 node. Node 是一个基于Chrome JavaScript V8引擎建立的一个平台,可以利用它实现 Web服务,做类似PHP的事. 打 ...

  10. 深度学习:Keras入门(一)之基础篇

    1.关于Keras 1)简介 Keras是由纯python编写的基于theano/tensorflow的深度学习框架. Keras是一个高层神经网络API,支持快速实验,能够把你的idea迅速转换为结 ...