Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

75

积分

1

好友

8

主题
1#
发表于 2012-7-26 09:19:18 | 查看: 3593| 回复: 0
刘大你好!我做了个关于ASM磁盘替换(数据迁移)的实验,并对比操作前后的变化,如下:
测试环境:
操作系统版本:                                 
Linux linux1 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:39 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
数据环境:RAC single-node 11.2.0.3
SQL> select * from v$version where rownum<2;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

以下为测试过程:
磁盘组DATA1在迁移前的数据数据分布及空间使用情况
[code]
SQL> select a.name,a.type,b.path,b.name,b.total_mb,b.free_mb,b.state from v$asm_diskgroup a,v$asm_disk b where a.group_number=b.group_number and a.name='DATA1';
NAME       TYPE         PATH                   TOTAL_MB    FREE_MB STATE
---------- ------------ -------------------- ---------- ---------- ----------------
DATA1      EXTERN       ORCL:DATA4                 2047        750 NORMAL
DATA1      EXTERN       ORCL:DATA2                 2047        751 NORMAL
                              
磁盘组DATA1总共大小:4094mb        
剩余:1501mb  
USED:2593mb


接着往磁盘组DATA1中添加了2个磁盘,大小分别为2Gb和10Gb;
SQL> alter diskgroup data1 add disk 'ORCL:DATA5';

Diskgroup altered.

SQL> alter diskgroup data1 add disk 'ORCL:DATA1';

Diskgroup altered.

将平衡级别设置为11,加快平衡速度
SQL>alter diskgroup DATA1 rebalance power 11;

Diskgroup altered.

完成平衡后再次查看数据的分布和空间使用情况
SQL> select a.name,a.type,b.path,b.name,b.total_mb,b.free_mb,b.state from v$asm_diskgroup a,v$asm_disk b where a.group_number=b.group_number and a.name='DATA1';

NAME       TYPE         PATH                 NAME         TOTAL_MB    FREE_MB STATE
---------- ------------ -------------------- ---------- ---------- ---------- ----------------
DATA1      EXTERN       ORCL:DATA1           DATA1           10236       9696 NORMAL
DATA1      EXTERN       ORCL:DATA4           DATA4            2047       1361 NORMAL
DATA1      EXTERN       ORCL:DATA2           DATA2            2047       1359 NORMAL
DATA1      EXTERN       ORCL:DATA5           DATA5            2047       1364 NORMAL
磁盘组DATA1总共大小:16377mb        
剩余:13780mb  
USED:2597mb

最后将3块2G盘全部踢出DATA1磁盘组
SQL> alter diskgroup data1 drop disk data5;

Diskgroup altered.
……
SQL> alter diskgroup data1 drop disk data4;

Diskgroup altered.
……
SQL> alter diskgroup data1 drop disk data2;

Diskgroup altered.
平衡完成后再次查看磁盘组DATA1空间使用情况:
SQL> select a.name,a.type,b.path,b.name,b.total_mb,b.free_mb,b.state from v$asm_diskgroup a,v$asm_disk b where a.group_number=b.group_number and a.name='DATA1';

NAME       TYPE         PATH                 NAME         TOTAL_MB    FREE_MB STATE
---------- ------------ -------------------- ---------- ---------- ---------- ----------------
DATA1      EXTERN       ORCL:DATA1           DATA1           10236       7645 NORMAL
                                    
磁盘组DATA1总共大小:10236mb        
剩余:7654mb  
USED:2951mb

问题:
对比使用空间为什么会发生变化,虽然变化不大,只要几兆,但是实际生产环境中如果几个T的数据,在做类似操作时是否会发生更大的变化。
ASM rebalance操作自身是否会整理磁盘组中的数据分布(是否类似于windows中的磁盘整理功能)。
您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-25 14:43 , Processed in 0.044695 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569