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

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

45

积分

0

好友

0

主题
1#
发表于 2012-5-9 10:09:16 | 查看: 7351| 回复: 10
共享一些自己在用VBox时,用的一些命令:
都是对硬盘的一些操作命令,在大批量做时,感觉还是命令的效率高一些:

1. 创建磁盘:

  1. D:\> cd D:\Program Files\Oracle\VirtualBox

  2. D:\Program Files\Oracle\VirtualBox>VBoxManage createhd --filename "E:\VM_OS\sharestorage\ocr.vdi" --size 200 --variant Fixed

  3. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

  4. Disk image created. UUID: 708201b9-0f5f-4e35-b661-8209aaad4bd0


  5. D:\Program Files\Oracle\VirtualBox>VBoxManage createhd --filename "E:\VM_OS\sharestorage\votingdisk.vdi" --size 200 --variant Fixed

  6. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

  7. Disk image created. UUID: 6815716f-894c-4f89-bef6-c07c435d8cdb



  8. D:\Program Files\Oracle\VirtualBox>VBoxManage createhd --filename "E:\VM_OS\sharestorage\asmdisk1.vdi" --size 3100 --variant Fixed

  9. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

  10. Disk image created. UUID: 83ff356a-d631-4475-b803-74f9ae1c4132
复制代码


“VBoxManage createhd” 是创建硬盘的命令。

--filename是指这个文件要创建的路径
--size 参数后面的单位是M.
--variant 指的是硬盘的类型是固定大小的

可以通过不接参数看到VBoxManage createhd的用法:

  1. D:\Program Files\Oracle\VirtualBox>VBoxManage createhd

  2. Usage:


  3. VBoxManage createhd         --filename <filename>

  4.                             --size <megabytes>|--sizebyte <bytes>

  5.                             [--format VDI|VMDK|VHD] (default: VDI)

  6.                             [--variant Standard,Fixed,Split2G,Stream,ESX]
复制代码




2. 修改磁盘的类型,例如共享类型

在这里,我把之前创建的磁盘都设成共享类型,方便两个RAC节点都能访问。
  1. D:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd "E:\VM_OS\sharestorage\ocr.vdi" --type shareable


  2. D:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd "E:\VM_OS\sharestorage\votingdisk.vdi" --type shareable


  3. D:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd "E:\VM_OS\sharestorage\asmdisk1.vdi" --type shareable
复制代码



用法如下:
  1. D:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd

  2. Usage:


  3. VBoxManage modifyhd         <uuid>|<filename>

  4.                             [--type normal|writethrough|immutable|shareable|

  5.                                     readonly|multiattach]

  6.                             [--autoreset on|off]

  7.                             [--compact]

  8.                             [--resize <megabytes>|--resizebyte <bytes>]
复制代码



3. 把创建好的硬盘加载到每个虚拟主机上

  1. D:\Program Files\Oracle\VirtualBox>VBoxManage storageattach "rac1" --storagectl "SATA 控制器" --port 2 --device 0 --type hdd --medium "E:\VM_OS\sharestorage\votingdisk.vdi" --mtype shareable


  2. D:\Program Files\Oracle\VirtualBox>VBoxManage storageattach "rac2" --storagectl "SATA 控制器" --port 2 --device 0 --type hdd --medium "E:\VM_OS\sharestorage\votingdisk.vdi" --mtype shareable


  3. D:\Program Files\Oracle\VirtualBox>VBoxManage storageattach "rac1" --storagectl "SATA 控制器" --port 3 --device 0 --type hdd --medium "E:\VM_OS\sharestorage\asmdisk1.vdi" --mtype shareable


  4. D:\Program Files\Oracle\VirtualBox>VBoxManage storageattach "rac2" --storagectl "SATA 控制器" --port 3 --device 0 --type hdd --medium "E:\VM_OS\sharestorage\asmdisk1.vdi" --mtype shareable
复制代码


“rac1”, "rac2"是我vbox里主机的名字,也就是在vbox里新建主机的名字,不是操作系统的hostname!
--storagectl 后面根据你vbox的版本,如果是中文版,可能是"SATA 控制器", 如果是英文版可能是"SCSI Controller",还有就是根据你设备的类型去确定的。
--port 后面的数字不同的设备是不一样的,在两个节点上指向的同一个vdi文件,最好指向的port都一样,防止出现混乱的问题。

更多的可以看帮助。
  1. D:\Program Files\Oracle\VirtualBox>VBoxManage storageattach

  2. Usage:


  3. VBoxManage storageattach    <uuid|vmname>

  4.                             --storagectl <name>

  5.                             [--port <number>]

  6.                             [--device <number>]

  7.                             [--type dvddrive|hdd|fdd]

  8.                             [--medium none|emptydrive|

  9.                                       <uuid>|<filename>|host:<drive>|iscsi]

  10.                             [--mtype normal|writethrough|immutable|shareable|

  11.                                      readonly|multiattach]

  12.                             [--comment <text>]

  13.                             [--setuuid <uuid>]

  14.                             [--setparentuuid <uuid>]

  15.                             [--passthrough on|off]

  16.                             [--tempeject on|off]

  17.                             [--nonrotational on|off]

  18.                             [--bandwidthgroup <name>]

  19.                             [--forceunmount]

  20.                             [--server <name>|<ip>]

  21.                             [--target <target>]

  22.                             [--tport <port>]

  23.                             [--lun <lun>]

  24.                             [--encodedlun <lun>]

  25.                             [--username <username>]

  26.                             [--password <password>]

  27.                             [--intnet]
复制代码


加好这个后,你再到两个虚拟机里看,就会发现都看到了加入的盘。


4. 克隆硬盘:
命令还是比较简单的:
  1. D:\Program Files\Oracle\VirtualBox> VBoxManage clonehd "D:\RAC1.vdi" "D:\RAC2.vdi"
复制代码


用法:
  1. D:\Program Files\Oracle\VirtualBox>VBoxManage clonehd

  2. Usage:


  3. VBoxManage clonehd          <uuid>|<filename> <uuid>|<outputfile>

  4.                             [--format VDI|VMDK|VHD|RAW|<other>]

  5.                             [--variant Standard,Fixed,Split2G,Stream,ESX]

  6.                             [--existing]
复制代码



在搭rac这几个命令应该够用了。

另外,对于压缩硬盘,对于裸设备无效。
可以使用VBoxManage modifyhd XP_Client_1.vdi --compact去实现,但是只是看到没有测试过,不知道效果怎样。


大家如果有使用过其他的命令也可以在之后的帖子进行补充。

2#
发表于 2012-5-9 10:31:49
Good Post!

回复 只看该作者 道具 举报

3#
发表于 2012-5-9 10:41:05
好贴!  而且还是windows下的,实属难得

回复 只看该作者 道具 举报

4#
发表于 2012-5-9 10:43:41
嗯,以后碰到问题看这里就行。

回复 只看该作者 道具 举报

5#
发表于 2012-5-13 07:47:52
今天试了下compat的功能,似乎不是太明显。。。。

1. 当前的硬盘空间:
  1. [oracle@virdg1 ~]$ df -Th
  2. Filesystem    Type    Size  Used Avail Use% Mounted on
  3. /dev/mapper/ROOTVG-LV_ROOT1
  4.               ext3    6.7G  5.2G  1.2G  82% /
  5. /dev/sda1     ext3     99M   13M   82M  13% /boot
  6. tmpfs        tmpfs    293M     0  293M   0% /dev/shm
  7. /dev/hda   iso9660    3.3G  3.3G     0 100% /media/Enterprise Linux dvd 20090908
  8. /dev/hda   iso9660    3.3G  3.3G     0 100% /iso
复制代码
2. 关闭虚拟机
  1. [oracle@virdg1 ~]$ exit
  2. logout

  3. [root@virdg1 ~]# init 0
复制代码
3. 目前的vdi文件大小
  1. 6.36 GB (6,832,558,080 字节)
复制代码
4. 压缩文件
  1. D:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd "E:\VM_OS\vir_dg1\vir_dg1.vdi" --compact
  2. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
复制代码
5. 查看压缩前后的比较:
压缩前:
  1. D:\Program Files\Oracle\VirtualBox>dir E:\VM_OS\vir_dg1\*.vdi
  2. 驱动器 E 中的卷是 新加卷
  3. 卷的序列号是 68D6-8D93

  4. E:\VM_OS\vir_dg1 的目录

  5. 2012-05-13  07:18     6,830,460,928 vir_dg1.vdi
  6. 2012-05-13  06:54     6,832,558,080 复件 vir_dg1.vdi
  7.                2 个文件 13,663,019,008 字节
  8.                0 个目录 12,589,428,736 可用字节
复制代码
复件是我在compat之前做的备份,可以看到大概压缩了2m的空间。

回复 只看该作者 道具 举报

6#
发表于 2012-6-5 21:35:06
这个不错,收藏一下!!!!!!!

回复 只看该作者 道具 举报

7#
发表于 2012-6-13 13:15:46
不错,正准备从vmware转到vbox

回复 只看该作者 道具 举报

8#
发表于 2012-6-28 15:55:16
学习了,谢谢啊 ,我以前用wmware,看看vbox好用吗

回复 只看该作者 道具 举报

9#
发表于 2012-7-13 13:50:56

Vrtualbox 上关于共享磁盘的问题

Vrtualbox 上关于共享磁盘的问题

“2. 修改磁盘的类型,例如共享类型  “与 ”3. 把创建好的硬盘加载到每个虚拟主机上“  是否存在一个顺序问题呢?应该是首先把创建好的硬盘加载到每个虚拟主机上,再修改磁盘的类型,例如共享类型,

1、先修改磁盘类型,再加载到虚拟主机上,会出现错误:
F:\Oracle\VirtualBox>VBoxManage modifyhd "G:\VirtualBox\sharestorage\ocr.vdi" --
type shareable
VBoxManage.exe: error: Could not find an open hard disk with location 'G:\Virtua
lBox\sharestorage\ocr.vdi'
VBoxManage.exe: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), compo
nent VirtualBox, interface IVirtualBox, callee IUnknown
Context: "FindMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, pMedium.asOutPar
am())" at line 174 of file VBoxManageDisk.cpp

2、如果把顺序调转,则成功了:
F:\Oracle\VirtualBox>VBoxManage storageattach OEL_RAC1 --storagectl "SATA 控制器
" --port 1 --device 0 --type hdd --medium "G:\VirtualBox\sharestorage\votingdisk
.vdi" --mtype shareable

F:\Oracle\VirtualBox>VBoxManage storageattach OEL_RAC1 --storagectl "SATA 控制器
" --port 2 --device 0 --type hdd --medium "G:\VirtualBox\sharestorage\ocr.vdi" -
-mtype shareable

F:\Oracle\VirtualBox>VBoxManage storageattach OEL_RAC1 --storagectl "SATA 控制器
" --port 3 --device 0 --type hdd --medium "G:\VirtualBox\sharestorage\asm.vdi" -
-mtype shareable

F:\Oracle\VirtualBox>VBoxManage modifyhd "G:\VirtualBox\sharestorage\ocr.vdi" --
type shareable

F:\Oracle\VirtualBox>VBoxManage modifyhd "G:\VirtualBox\sharestorage\votingdisk.
vdi" --type shareable

F:\Oracle\VirtualBox>VBoxManage modifyhd "G:\VirtualBox\sharestorage\asm.vdi" --
type shareable

回复 只看该作者 道具 举报

10#
发表于 2012-7-18 10:45:08
vbox支持共享硬盘了,不错

回复 只看该作者 道具 举报

11#
发表于 2013-4-9 08:53:56
good post      

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

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

GMT+8, 2024-12-27 16:04 , Processed in 0.088127 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

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