虚拟机数据恢复每次都要收集数据

想收集实验数据, 希望各位来参与 - 用 VMware 虚拟机跑游戏双开.
由于有 OLG 多开的需求, 所以想要尽可能做到一台电脑可以开两个游戏这样的做法.
但有很多 OLG 会限制在一台电脑的一个系统下只能开一个游戏.
所以我想出了变通手法 : 利用 VMware 来开虚拟系统, 再从里面开启一个游戏.
可是这种手法非常吃 CPU 效能...
(VM 7.x 版本不吃显卡这一套, 装 7600GT 跟装 GTS450 都一样, 8.0 版还没去申请来玩所以不知道)
我家电脑目前已确定 E5200 , E6750 都只有开起来的能力,
而且虚拟机内的系统很容易当机, 断线, 游戏还常常开不起来...
(都是 4GB / 8GB 插满)
不过我弟新买的 i3 2100 刚好跨门槛可以胜任这个工作.
因此我想要请有空的人帮忙测试一下, 或提供一下自己的经验.
作为以后采购新机的参考依据
如果有 i5 i7 或 FX 81x0 , FX61x0 , x6 10xxT 之流的来参与测试会更好
这样我就有败家的理由了.
测试规格 - 软件环境 :
主系统 Windows XP (32bit) 副系统 Windows XP (32bit)
VMware Workstation ver 7.14 或以后版本.
VM 机器设定, 内存配置 1GB (1024MB)
测试游戏, 随便, 有吃到 3D 效能的就好, 只是单机游戏也行.
但希望不要低于一般的 OLG 水准, 例如 艾尔之光, 永恒纪元, 跑跑卡丁车一类的.
网络上几乎没人会这样做, 所以我一直很难找到相关资料,
而现在我要养家, 没有钱也没有时间可以每个都买来试
(年轻时代的我真的会去找二手市场买二手品, 把每个全都试过... )
希望各位可以共襄盛举并发掘自己的电脑游戏潜力
已知规格 :
主 XP 32bit 副 XP 32bit / P4 530j / 4GB / 7600GT - 艾尔之光
... 根本开不起来.
主 XP 32bit 副 XP 32bit / E5200 / 4GB / 7600GT - 艾尔之光
特效全关, 800x600 , 仅只于跑城跟商店街, 无法副本
主 XP 32bit 副 XP 32bit / E6750 / 8GB / 7600GT - 艾尔之光
特效全关, 800x600 , 仅只于跑城跟商店街, 无法副本
主 XP 32bit 副 XP 32bit / E5200 / 8GB / 7600GT - 艾尔之光
, 可进副本跑多人游戏无异常.
换用VirtualBox试试看吧
另外有试过SandBox这类软件了吗?
不要浇人家冷水嘛...
不提 VB 的原因就是 VB 本身不稳定, 较新的 3.x 版不要说跑游戏, 跑系统都会不定时自我崩溃.
我不知道问题在哪, 三台电脑上面 VB 都水土不服, 挂 3D 游戏根本挂不起来就算了
系统自崩是怎样...
装日 WIN 玩 HG 经常自崩, 最后还是鼻子摸摸回去用 VM
其他的也试过了, 就稳定性来说反而 VMware 还好些.
Host OS不考虑用Windows 7 64bit?
现在内存便宜
可以考虑I5 2400 配 16G RAM
我桌机就是用I5 2400配16G RAM
用virtualbox跟VM player,都没遇过当机、自崩问题
不过我虚拟系统,都是拿来玩os,跑linux或其他windows用
没试过挂游戏
SandBox 比较不算是楼主要的功能
A如来 wrote:
因为三台都是Intel啊
跟Intel不合或是优化不够的...都不是好产品
可以请教一下, 这句话是指什么呢?
谁跟 intel 不合, 优化不够, 请说明一下吧?
enm wrote:
可以请教一下, 这句...(恕删)
其实是个反讽,别太在意
enm wrote:
可以请教一下, 这句...(恕删)
应该是引述这句话.....
我家电脑目前已确定 E5200 , E6750 都只有开起来的能力,
而且虚拟机内的系统很容易当机, 断线, 游戏还常常开不起来...
xu.6 wrote:
其实是个反讽,别太在意
呃, 我发文求问, 就要有清楚的了解
既然这位先知已经说了个线索, 求知欲深厚的我自然不能放过这求学的机会
就一定要好好请教一下为什么这位板友会说 :
A如来 wrote:
因为三台都是Intel啊
跟Intel不合或是优化不够的...都不是好产品
提问求解, 这是一定要的.
是说, i3 2100 开起来跑没问题喔.
所以楼上讲的, 我可以理解, 但绝不是正解喔 ~
简单讲就是我想知道到底 CPU 到哪一个门槛可以跑虚拟机里的游戏.
i3 2100 可以跑了, AMD 呢, 我一直想再买一部 AMD 来玩玩, 有人好心可以帮测一下嘛.
我是觉得,你问他,等一下就会歪楼
变成IA战场..
回到原问题,在分享一下经验谈
VM系统,我也接触一阵子
虽然使用频率不高
不过看到有回应提到,虚拟系统内,容易当机断线
这方面问题,有两个解
一是软件方面:
虚拟机器建立好之后,还得需要微调过,别直接使用
ex.关闭不必要的音效装置,模拟的芯片组改ICH9...之类
二是硬件方面:
1.硬件设备的driver更新
2.记体体跟主机板相容性不足够,因为VM系统在运作时,会使用量大cpu、内存资源
我自己就遇过记体用量大于80%,渐渐不稳定,超过90%就当机
后来换过主机板解决
小弟不知道要不要回文,怕到时候又有巴哈高手来追杀呢?
分享配置经验会被鞭打的体无完肤..
罢了.如果如此以后都不要再分享此类使用经验好了..
测试过的游戏:早期一点的,希望恋曲,冰火等
去年的游戏,萌谷帝国,神人,九刃等
近期的游戏,天剑神曲,我的狐狸女友等
基本上VM系统是真的很稳,只要硬件没出问题,不要说一个3D游戏,即使在一个虚拟视窗内开3个虚拟游戏,甚至我试过在某些游戏(如我的狐狸女友)总共30开(靠硬件实体开机,没用外挂)挂个120个小时也不会当机(小弟真的使用过这么久,拿来摆地摊,采集等,)
硬件方面的配置,别的虚拟系统我不清楚,但是VM的话,其实内存的考虑是很重要的
小弟自己的使用经验.您配置给虚拟系统的内存设定,不代表是它会使用的上限..
小弟举例来说好了,我开过5个虚拟视窗,每个虚拟视窗都设定3G的内存,然后在虚拟机器里开启游戏.
从帐面上来说,那这5个VM应该就只使用15G的内存吧?
可是我实际经过一段时间后,发现内存被吃到28G左右的内存
对此小弟曾有猜测是不是虚拟机器里的游戏,仍然会使用配置给虚拟机器以外的内存
但不管如何,的确虚拟系统会使用超过配置给他的内存是真的..
如果内存不够,虚拟系统的游戏就很当机,反之,则会很稳定使用..
用过的主机:
amd-x4-640/8G/ATI4850/冰火等游戏/采矿,副本等稳定使用
amd-x6-1090t/16G/ATI4860/萌谷帝国等游戏/种菜,钓鱼,副本等游戏内容稳定使用
intel-2500k/16G/ATI6770/我的狐狸女友等游戏/采集,副本稳定使用
intel/3930k/32G/ATI6850cf/我的狐狸女友等游戏/采集,副本,跑商等游戏内容稳定使用1069人阅读
本文内容摘自:
Java中通过多线程使得多个任务同时执行处理,所有的线程共享JVM内存区域main memory,而每个线程又有自己的工作内存,当线程与内存区域进行交互时,数据从主存拷贝到工作内存,进而交由线程处理。
Java虚拟机内存模型中定义的访问操作与物理计算机处理的基本一致。
JVM的逻辑内存模型如下图:
1、程序计数器(Program Counter Register)
程序计数器是一块较小的内存空间,其存放的是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能会通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。
由于Java&虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)只会执行一条线程中的指令。因此,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间的计数器互不影响,独立存储,我们称这类内存区域为“线程私有”的内存。
如果线程正在执行的是一个Java&方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是Natvie&方法,这个计数器值则为空(Undefined)。此内存区域是唯一一个在Java&虚拟机规范中没有规定任何OutOfMemoryError&情况的区域。
2、Java虚拟机栈(Java Virtual Machine Stacks)
与程序计数器一样,Java虚拟机栈也是线程私有的,其生命周期与线程相同。
虚拟机栈描述的是Java&方法执行的内存模型:每个方法被执行的时候都会同时创建一个栈帧(Stack Frame&①)用于存储局部变量表、操作栈、动态链接、方法出口等信息。每一个方法被调用直至执行完成的过程,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。
经常有人把Java&内存区分为堆内存(Heap)和栈内存(Stack),这种分法比较粗糙,Java&内存区域的划分实际上远比这复杂。这种划分方式的流行只能说明大多数程序员最关注的、与对象内存分配关系最密切的内存区域是这两块。其中所指的“堆”在后面会专门讲述,而所指的“栈”就是现在讲的虚拟机栈,或者说是虚拟机栈中的局部变量表部分。
局部变量表存放了编译期可知的各种基本数据类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference&类型,它不等同于对象本身,根据不同的虚拟机实现,它可能是一个指向对象起始地址的引用指针,也可能指向一个代表对象的句柄或者其他与此对象相关的位置)和returnAddress&类型(指向了一条字节码指令的地址)。其中64&位长度的long&和double&类型的数据会占用2&个局部变量空间(Slot),其余的数据类型只占用1&个。局部变量表所需的内存空间在编译期间完成分配,当进入一个方法时,这个方法需要在帧中分配多大的局部变量空间是完全确定的,在方法运行期间不会改变局部变量表的大小。
抛出异常:如果线程请求的栈深度大于虚拟机所允许的深度,将抛出StackOverflowError异常;如果虚拟机栈可以动态扩展(当前大部分的Java&虚拟机都可动态扩展,只不过Java&虚拟机规范中也允许固定长度的虚拟机栈),当扩展时无法申请到足够的内存时会抛出OutOfMemoryError&异常。
3、本地方法栈(Native Method Stacks)
本地方法栈与虚拟机栈的作用非常相似,虚拟机栈为虚拟机执行Java方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用的Native方法服务的。
虚拟机规范中对本地方法栈中的方法使用的语言、使用方式与数据结构并没有强制规定,因此具体的虚拟机可以自由实现它。甚至有的虚拟机(譬如Sun HotSpot&虚拟机)直接就把本地方法栈和虚拟机栈合二为一。与虚拟机栈一样,本地方法栈区域也会抛出StackOverflowError&和OutOfMemoryError异常。
4、Java堆(Java Heap)
对于大多数应用来说,Java&堆是Java&虚拟机所管理的内存中最大的一块。Java&堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。
Java堆中唯一的目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。
这一点在Java&虚拟机规范中的描述是:所有的对象实例以及数组都要在堆上分配①,但是随着JIT&编译器的发展与逃逸分析技术的逐渐成熟,栈上分配、标量替换②优化技术将会导致一些微妙的变化发生,所有的对象都分配在堆上也渐渐变得不是那么“绝对”了。
Java堆是垃圾收集器管理的主要区域,因此很多时候也被称作“GC堆”(Garbage Collected Heap)。
根据Java&虚拟机规范的规定,Java&堆可以处于物理上不连续的内存空间中,只要逻辑上是连续的即可,就像我们的磁盘空间一样。在实现时,既可以实现成固定大小的,也可以是可扩展的,不过当前主流的虚拟机都是按照可扩展来实现的(通过-Xmx和-Xms&控制)。如果在堆中没有内存完成实例分配,并且堆也无法再扩展时,将会抛出OutOfMemoryError&异常。
4、方法区(Method Area)——又名Non-Heap
方法区与Java堆一样,是各个线程共享的内存区域,用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。虽然Java&虚拟机规范把方法区描述为堆的一个逻辑部分,但是它却有一个别名叫做Non-Heap(非堆),目的应该是与Java&堆区分开来。
根据Java&虚拟机规范的规定,&当方法区无法满足内存分配需求时,&将抛出OutOfMemoryError&异常。
5、运行时常量池(Runtime Constant Pool)
运行时常量池是方法区的一部分。Class文件中除了有类的版本、字段、方法、接口等描述信息外,还有一项信息是常量池,用于存放编译期生成的各种字面量和符号引用,这部分内容在类加载后存放到方法区的运行时常量池中。
6、直接内存(Direct Memory)
直接内存并不是虚拟机运行时数据区的一部分,也不是Java虚拟机规范中定义的内存区域,但是这部分内存也被频繁地使用,而且也可能导致OutOfMemoryError&异常出现。应用在某些场景中能显著提高性能,因为其避免了在Java堆和Native堆中来回复制数据。
显然,本机直接内存的分配不会受到Java&堆大小的限制,但是,既然是内存,则肯定还是会受到本机总内存(包括RAM&及SWAP&区或者分页文件)的大小及处理器寻址空间的限制。服务器管理员配置虚拟机参数时,一般会根据实际内存设置-Xmx等参数信息,但经常会忽略掉直接内存,使得各个内存区域的总和大于物理内存限制(包括物理上的和操作系统级的限制),从而导致动态扩展时出现OutOfMemoryError异常。
逻辑内存模型我们已经看到了,那当我们建立一个对象的时候是怎么进行访问的呢?
在Java&语言中,对象访问是如何进行的?对象访问在Java&语言中无处不在,是最普通的程序行为,但即使是最简单的访问,也会涉及Java&栈、Java&堆、方法区这三个最重要内存区域之间的关联关系,如下面的这句代码:
Object obj = new Object();
假设这句代码出现在方法体中,那“Object obj”这部分的语义将会反映到Java&栈的本地变量表中,作为一个reference&类型数据出现。而“new
Object()”这部分的语义将会反映到Java&堆中,形成一块存储了Object&类型所有实例数据值(Instance
Data,对象中各个实例字段的数据)的结构化内存,根据具体类型以及虚拟机实现的对象内存布局(Object Memory Layout)的不同,这块内存的长度是不固定的。另外,在Java&堆中还必须包含能查找到此对象类型数据(如对象类型、父类、实现的接口、方法等)的地址信息,这些类型数据则存储在方法区中。
由于reference&类型在Java&虚拟机规范里面只规定了一个指向对象的引用,并没有定义这个引用应该通过哪种方式去定位,以及访问到Java&堆中的对象的具体位置,因此不同虚拟机实现的对象访问方式会有所不同,主流的访问方式有两种:使用句柄和直接指针。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:87121次
积分:1361
积分:1361
排名:第17123名
原创:61篇
转载:21篇
(3)(9)(1)(1)(1)(6)(3)(1)(8)(10)(5)(3)(5)(8)(1)(2)(1)(1)(2)(7)(3)查看:2273|回复:4
51CTO学院讲师
我的服务器实体机上安装了两个虚拟机,一个是weblogic,一个是oracle,我想将每次在oracle虚拟机上备份的数据直接就备份到服务器的实体机上,担心虚拟机哪天出问题,所以每次备份后还得拷贝到实体机上,三个机子的IP地址都知道,有谁知道怎么来实现啊 ,最好提供个脚本,先谢了各位
最好的方法是给虚拟机做快照,出问题的时候直接恢复回去就行了
还有就是做共享将oracle的备份共享到实体机器上就行了用NFS
oracle的备份脚本请参考我的博客
小小的人儿啊风生水起呀天天就爱穷开心那逍遥的魂儿啊假不正经吧......
51CTO学院讲师
自己解决了,在实体机建立一个bat的批处理文件,文件内容如下:
set tempvalue=username_%date:~0,10%
set directory_temp=d:\BackUp\%tempvalue%
set file_dmp=%directory_temp%\%tempvalue%.dmp
set file_log=%directory_temp%\%tempvalue%.log
md %directory_temp%
username/fassword@oracle的IP/sid file=%file_dmp% log=%file_log%
然后加到任务计划即可
也不错哦:(pdd_26):
小小的人儿啊风生水起呀天天就爱穷开心那逍遥的魂儿啊假不正经吧......
助理工程师
好东西 学习了使用合作网站帐号登录:
查看: 1058|回复: 12
虚拟机里面能架设oracle数据库吗?
发表于 6-18-:38
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
大师们,你们有没有在里面架设数据库?&&我听一个人讲课说不能放数据库。。。。现在有点纠结。
里面有没有其它的产品专门做数据库的呀?&&求解答& &&&多谢啦
vmsky精彩虚拟化
发表于 6-18-:37
sqlserver居多吧
oracle官方不建议在虚拟机里面部署数据库,
vmare官方有个白皮书,oracle部署在esxi上面的,可以参照下。
vmsky精彩虚拟化
发表于 6-18-:17
你听的一定不是原厂讲师讲课
vmsky精彩虚拟化
发表于 6-18-:35
去年一直在吹关键应用转型,淘汰小机,全面转向x86,你觉得哪些是关键应用?
vmsky精彩虚拟化
发表于 6-18-:11
本帖最后由 shuhan 于 6-19- 编辑
&&windows&&版本的ORACLE可以虚拟化,除了性能稍弱没有其它问题!
&&LINUX下的ORACLE虚拟化,还是算了吧,问题多多,除非你只是单机用,不做RAC,也不做第三方HA,,你说VM的HA,实际项目中根本不用,不靠谱!
vmsky精彩虚拟化
发表于 6-18-:09
1、传统的VMware vSphere HA,关键应用不靠谱 —— 系统重启,还是白搭;
2、VMware vSphere内运行Oracle,可以;不管是Win还是Linux —— 其实Oracle自己也在捣腾VM内的Oracle。
3、VMware vSphere内的Oracle RAC,可以;但是需要有足够的硬件、存储资源 —— 似乎采用iSCSI存储的环境,是最容易的做法。
vmsky精彩虚拟化
发表于 6-18-:08
提这个问题的多半不是DBA
100W的硬件+授权费用才ORACLE入门而已
vmsky精彩虚拟化
发表于 6-19-:02
本帖最后由 TiGi 于 6-19- 编辑
说白了,考虑几点:
怎样需求的数据库? —— 几十GB、几百GB、几TB还是多少?就实际场景而言,国内很多企业的数据库,也就是几GB、几十GB而已 —— 这样的数据库,如果虚拟化掉,现有的虚拟化平台完全可用。
怎样的高可用需求? —— VMware vSphere HA,不太适合数据库使用,除非还启用RAC。
对于RAC,其实有几种场景 —— 多物理机、物理机+虚拟机、多虚拟机 —— 只要架构满足,虚拟机完全可以担负RAC。
对于ODG、ADG之类的场景 —— 物理机与虚拟机完全可以协同;全虚拟机(别放在一个集群上)也是可以的。
————————————————————————————
说句实话,大家可以找一下某些财务核算软件,问一下他们的大客户,实际数据量有多少 —— 有些企业的业务数据量可能会比较大(零售、电商等等)、而中小企业、管理型企业等等,几十GB已经很大了。
vmsky精彩虚拟化
发表于 6-19-:46
VMware上用两个Oracle RAC节点,承载5000人同时选课,没有问题。关键是RAC放在上面迁移不方便。
如果是单节点的Oracle,虚拟化了也没问题,因为数据量都不大。如果上100GB以上,你肯定也不考虑虚拟化了。还有更多需要优化的地方。
vSphere HA还是很好的。就看你怎么利用起来。
vmsky精彩虚拟化
发表于 6-19-:00
理论上,都可以
实际上,有很多注意的地方。关键是虚拟化后的实际效能是否可以满足应用场景的负载要求。这里受很多因素的影响,而且有些时候很重要的端到端性能是case by case的。
基本上,虚拟化肯定是有性能折扣的。如果这个折扣后的性能可以满足场景要求,那么完全可以使用虚拟化,这相当于用折扣的这些性能去换虚拟化带来的额外功能。如果物理上都很勉强,那么基本上这个case就不要虚拟化。
vmsky精彩虚拟化
发表于 6-19-:44
纯高负载的应用还是用物理机吧。
纯高负荷.......,啥是纯高负荷?
CPU、内存、IO中的一项?若干项?全部?
以R920这样的怪兽x86单服务器而言,四个多核(不好意思,没有去研究单个CPU最多多少核心)、MAX 6TB内存、10GB或者40GB IO(服务器&
发表于 6-20-
现在的物理机性能突飞猛进,单主机性能其实已经可以做的很大了。
理论上,性能足够高,什么都能虚拟化。
实际上,就要看手头有什么能用量了。对于只有老机器的人来说,虚拟化可能是个负担。但手里有最新的至强v2的就&
发表于 6-20-
vmsky精彩虚拟化
发表于 6-20-:46
本帖最后由 seanlaser 于 6-20- 编辑
纯高负载的应用还是用物理机吧。
现在的物理机性能突飞猛进,单主机性能其实已经可以做的很大了。若干年前的“高负载”,现在可能完全小菜一碟。
理论上,性能足够高,什么都能虚拟化。
实际上,就要看手头有什么能用量了。对于只有老机器的人来说,虚拟化可能是个负担。但手里有最新的至强v2的就可以好好评估实际性能了。
所以脱离具体的情况是不能片面的说“ oracle能/不能虚拟化的”。
vmsky精彩虚拟化
发表于 6-20-:38
本帖最后由 TiGi 于 6-20- 编辑
纯高负载的应用还是用物理机吧。
纯高负荷.......,啥是纯高负荷?
CPU、内存、IO中的一项?若干项?全部?
以R920这样的怪兽x86单服务器而言,四个多核(不好意思,没有去研究单个CPU最多多少核心)、MAX 6TB内存、10GB或者40GB IO(服务器本地就有24个还是多少个硬盘槽位),这样一台服务器,可能比原本很多企业所有的计算机、服务器的总和都要强劲 —— 看上去很夸张,但是并不夸张,100台PC也就是100GB-800GB内存、过去的50台物理服务器也就是0.4-2TB内存而已。
如果在这样的服务器(配置1TB内存的系统的,个人估价可能在50万至80万间)与适当的网络、存储组合,在这样的平台上跑虚拟化,随后在虚拟机内运行数据库系统,能够满足85%以上的数据库使用场景/需求!
当然,实际中并不需要这样的机器。
假设原本的数据库,是运行在PE 2950这样的系统上,那R720配置192GB或更多的内存,跑虚拟化的数据库,性能不会比原本的PE 2950差!如果原本仅有16GB或32GB的内存,迁移后扩展到64GB,大部分场景下性能还会有所提升。
虚拟化的一个关键在于配套硬件!没有足够的硬件资源,那别指望“玩转”虚拟化!更别指望虚拟化“重要点的、高负荷点的应用”。但是,绝对不是“重要点的、高负荷点的应用”不能虚拟化。
————————
正好收到一封邮件,谈及数据库虚拟化:
.cn/showcontent_82953.htm
注意文中:......原本每个节点,只能给数据库约50GB的缓存......虚拟化后,128GB SGA,内存剩余量还很多(80G以上)......
—— 需要注意的是:虚拟化的时候,在较便宜的x86平台上,还是投入了较多的资金(文中谈及,采用顶配x86服务器,约30万)。
vmsky精彩虚拟化
GMT+8, 10-18-
Powered by

我要回帖

更多关于 虚拟机数据库 的文章

 

随机推荐