各位前辈帮我个忙,我现在有两块盘一块dev1,一块dev2,磁盘组dsk1由dev1和dev2组成,我现在想从dsk1中删除dev2,我想请教一下大家,该怎么样删除,还有是否能在数据库正常运行的情况下删除,是否能在数据库mount状态下删除,谢谢。

解决方案 »

  1.   

    1.什么操作系统?不同操作系统命令不一样.
    2.dev2中如果没有数据库的数据,当然可以删除,
    否则必须先迁移数据才行.迁移数据可以在mount 状态修改控制文件来实现.
      

  2.   

    操作系统为redhat as4
    两个盘中都有数据
      

  3.   

    /dev 是前面的,
    要看后面,比如下面这个例子,sda表示一块盘. (如果有sdb可以是一块本地盘或者一个lun)
    Last login: Mon Oct 12 04:09:43 2009 from 192.168.0.4
    [root@yysf ~]# fdisk -lDisk /dev/sda: 12.8 GB, 12884901888 bytes
    255 heads, 63 sectors/track, 1566 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes   Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          13      104391   83  Linux
    /dev/sda2              14        1566    12474472+  8e  Linux LVM
    你做的是操作系统的软raid吗?

    df -k
    fdisk -l 结果贴一下
      

  4.   

     Device Boot      Start        End      Blocks  Id  System 
    /dev/sdb1            1          1300      104391  83  Linux 
    /dev/sdb2              14        156600    12474472+  83  Linux 就这两块盘组成一个diskgroup,现在要删除sdb1,两块盘都有数据,oracle的ASM会自动的将第一块盘中的数据完全的拷贝到sdb2上吗?
    具体操作怎么样,谢谢了
      

  5.   

    fdisk -l的内容是手动改的不是实际的,但大体意思差不多,第二个start忘改了,呵呵
      

  6.   

    如果是windows操作系统,则可以用下面的:格式化磁盘分区: format                                    1.对D盘进行格式化: format D:          vol D:   (查看分区卷标)                                                             2.快速格式化:     format D: /Q
                                                                 3.不保存恢复信息: format c:/u    如果不填/u参数,硬盘根目录下将产生一个隐藏的映像
      

  7.   

    对你的意思不清楚,你这里指的是在ASM的磁盘组里去掉一个盘么。
      

  8.   

    忽略上面的问题, 没有看到你上面的fdisk。
      

  9.   

    如果你的sdb2足够大,直接先用 oracle的命令删除asm磁盘,
    命令语法如下
    1.找diskgoup disk对应关系
    SQL> select name,group_number from v$asm_diskgroup;NAME                           GROUP_NUMBER
    ------------------------------ ------------
    DG_ARCH                                   1
    DG_BACK                                   2
    DG_DATA                                   3SQL> select name,path from v$asm_disk where group_number=2
      2  /NAME                           PATH
    ------------------------------ ----------------------------
    DG_BACK_0000                   /dev/roradsk/oradsk20
    DG_BACK_0001                   /dev/roradsk/oradsk21
    DG_BACK_0002                   /dev/roradsk/oradsk22
    DG_BACK_0003                   /dev/roradsk/oradsk23SQL> 2.删除diskgroup下的 disk
    alter diskgroup DG_BACK  drop disk  DG_BACK_0000;
    就删除了一个diskgroup DG_BACK 下的 DB_BACK_0000 对应的磁盘.
    (比如 /dev/sdb1 对应 dgroupA 的disk A5):
    ALTER DISKGROUP dgroupA DROP DISK A5; 
    3.用 fdisk 删除 /dev/sdb1就可以了.fdisk 使用方法:
    http://www.xxlinux.com/linux/article/accidence/install/20051228/776_2.html