数据丢失
时间:2008-07-24
来源:互联网
1、pagespace设的太小,60G的内存只设了16G的pagespace。造成了pagespace用完。由于HA在那个时间点切换,应当是发生pagespace满时发生的时间很短,属于系统正常的pageout。
2、没有设置nokillroot ,使的root用户的进程被kill , 那时候你就算杀sybase的服务进程也好点。
3、sybase使用文件系统,并且未打开dsync参数,什么东西都写在操作系统的内存里,都没有真的写在硬盘上。
4、客户使用时也没注意,本来打几个sync就可以解决这个问题。不过这件事情是不能怪客户的。一般客户连小型机都很少登录的。
不过发生这种问题可能性很小,引以为戒吧。
作者: tyrone.dev 发布时间: 2008-07-24
作者: 小菜鸟_2008 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
另外sp_deviceattr 后面要跟什么参数?
[ 本帖最后由 小菜鸟_2008 于 2008-7-24 08:57 编辑 ]
作者: 小菜鸟_2008 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
作者: 小菜鸟_2008 发布时间: 2008-07-24
与sybase配置有关系,default是on的,但把他关了之后可以提高数据写性能(只写内存当然快了) 。 [/quote
sybase的人改为off了?
那也没错呀,写速度快了呀.
16G的PG也不见得就小了吧,关键得看你的应用来决定,
系统上线后就没有注意观察看看系统的性能等运行状况吗?
什么机器配这么高内存,有钱啊
作者: legend 发布时间: 2008-07-24
作者: larryh 发布时间: 2008-07-24
作者: blackcat 发布时间: 2008-07-24
HA认定生产无响应,强行重启了生产,并切换到了备机...
“强行重启了生产”是什么意思?用shutdown命令的话,会自动调用sync的。
作者: beginner-bj 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
作者: beginner-bj 发布时间: 2008-07-24
sybase的人改成OFF?找死啊,这个主要责任应该怪安装SYBASE的人,把这个改成OFF,即使PGSP是够的,SYNCD也没停,只要存在SYBASE意外崩溃(这个可能性不是很小)的情况,一定会完蛋。
sybase 意外崩溃的可能性并不大,我们有70个sybase数据库,运行了5年,但还没有发生过一次的意外崩溃。就算有意外崩溃,有syncd还是会将数据写入文件系统的。只要不是强行关机的,关了dsync标志也没有问题,比如sybase运行时你用kill -9一般还是能够起来的。这个问题最大的原因是PGSP设得不够,而且过了十几天又被HA给reboot机器了。应当是IBM配置的责任大一点吧。pagespace的设置是和内存最大值,有60G内存,你就应当认为在极限情况下需要全部换页。而不应当只想正常情况下够不够,因为你根本不知道客户会出什么问题。
作者: tyrone.dev 发布时间: 2008-07-24
它又不是dump设备,你把他当成dump设备看了。概念错误。
作者: 老农 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
一般看到这样的,就知道这系统可能的隐患多了去了。
作者: 老农 发布时间: 2008-07-24
PAGING SPACE的设置,和内存量其实没什么关系的,看样子你连它是干什么用的,什么情况下可能用到还没想清楚。
它又不是dump设备,你把他当成dump设备看了。概念错误。
没有关系?那我有60G内存,sybase用了55G(不是allocate max memory),再启动一个sybase服务用30G内存,配个10G的pagespace,你看看有没有问题。如果我只有30G的内存,这种情况我连sybase都不能启动起来。我当然知道pagespace实际应用程序使用的非PIN的计算内存有关,但象这种情况下。配大一点就不会出现这个问题,你能明确的知道客户的程序不会发生乱用内存的现象。
作者: tyrone.dev 发布时间: 2008-07-24
这么用sybase, pSeries, aix ...早死早投胎啦
作者: orian 发布时间: 2008-07-24
作者: beginner-bj 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
ORAIN说的没错,早死早投胎
作者: 老农 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
理你都多余,半桶水还瞎晃荡,知道一点就以为啥都明白了。
懒得教你了,你爱怎么着怎么着吧,早死早投胎。
作者: 老农 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
我不是AIX的设计者又怎么了?至少我敢说我比你懂得多。
你这样的垃圾我不欢迎,爱怎么死怎么死去。
给你点面子,我不说出你是哪里的,你不敢被别人知道你是谁的,呵呵,小人都这样。
我的行为大家当然都知道,我做事就这样正大光明,这就是你们做不到而害怕的,想诋毁也只能放冷箭。
作者: 老农 发布时间: 2008-07-24
作者: 老农 发布时间: 2008-07-24
这种人,教他干啥?除了崇洋媚外还会干什么?
作者: 老农 发布时间: 2008-07-24
作者: tyrone.dev 发布时间: 2008-07-24
作者: vlinx 发布时间: 2008-07-24
我说得早死早投胎是机器早点死,然后早点明白不能这么玩的意思哦
如果sybase占的内存比较多,然后再pin到物理内存,风险更大,死得更快。现代的Unix和以前的前提条件不太一样,以前unix大部分是给学术用的,设计之初希望更多人使用,而且用户大都是终端、个人用户,分时性非常强,所以用paging space提高内存的利用效率。
现在的Unix都是用在critical的环境下,特别是楼主的情况,可能是什么银行的core banking数据库,都是大家的血汗钱啊!性能、可靠性要求都非常高,我们已经容忍了去银行和几十个老大妈一起排队看着他们去交35.24元的电话费,如果再容忍你提款的时候,告诉你,系统坏了,下午甚至明天再来,估计谁都得砸柜台,更何况数据丢了!
既然有可靠性、性能要求,数据库占用内存不能超过80%那个内存claim的上限是必需的,而不是优化的需求。如果pin住,数据库内存这个大头不能交换,会更多地用其他的部分,系统的和连接程序的。由于可交换的部分比较少,交换必然更频繁,性能肯定一塌糊涂。那么多内存白用了。也就是平时就会发生很频繁的pi/po,性能不好。而一旦pgsp用尽(显然可能性更大),crash是必然。即使数据库能够roll back,不丢数据,down机也是不可接受的。
如果楼主在这里有可能担任何一点责任,还是早点知会大家,免得发生问题之后一同挨骂。当然,如果没有任何责任,也没那么热心,倒是可以看热闹。这也就是我说得早死早投胎啦,让每个人早点知道。
作者: orian 发布时间: 2008-07-24
作者: vlinx 发布时间: 2008-07-24
我有提问吗?我只是把发生的事情描述一下而已,你是不是小学没有毕业!不理解意思,还是自我感觉太好,以为发贴的都在问你。我只是提出了一点pagespace设得不够大,就有可能造成pagespace用光,而最大值与物理内 ...
是我不理解还是你自己不理解啊?那请问你发帖子是什么意思?你不知道论坛是干什么用的还胡说什么?
我可以肯定地告诉你,你的确错了,不信拉倒。
我就不是搞软件开发的,搞软件开发的我很佩服,这没什么说的。
但你总不能因为懂软件开发就觉得别的你也不应该听别人的了吧?
我说的是我在AIX方面,请看清楚了,这里是AIX版,主要是系统管理方面的。
搞软件开发的我见多了,不可能要求他们熟悉系统管理的。
作者: 老农 发布时间: 2008-07-24

作者: 小猪 发布时间: 2008-07-24
我怕挨骂 虽然我也很垃圾。。。
我说得早死早投胎是机器早点死,然后早点明白不能这么玩的意思哦
如果sybase占的内存比较多,然后再pin到物理内存,风险更大,死得更快。现代的Unix和以前的前 ...
第一机器是IBM与Sybase公司联合装的,和我一点关系都没有,我写出来就怕以后有可能会遇到同样的问题。由于客户有60G物理内存,只用51G给sybase,pagespace是16G,我想本来谁都会说是一个很合理的数字。到现在关键是出了问题,pin处物理内存后,这部分内存是不会参与到内存交换上去,那我最多可能只需要配置9*2G的pagespace就够了。因为客户只有sybase的业务在跑,目前最不清楚的是为什么会使用那么多的pagespace,因为有9G内存给操作系统用,一般操作系统也不需要这么多的内存。目前来看是由于不知道什么原因造成了内存使用太多。把操作系统的pagespace用光了造成了操作系统kill了syncd进程。造成了数据丢失,但对客户而言你说是sybase的配置问题,也很难说,他最多只是dsync没有打开,但没打开并不是错,比如你写了一段程序open(filepath , "r" ) ; 然后不断调用write(),最后数据丢失了,并不能说你的程序有问题吧。从这个来看,能说的也就是IBM的pagespace设置的太小了,如果再大一点,也许pagespace不会用完,就算系统慢点,但数据还是不会丢失,我想慢和丢失之间客户会做出正确的选择。更何况pagespace配多一点,对系统来说也没什么大的影响,最多多占一点硬盘空间,但至少可以明确责任问题。数据库运行的慢是数据库的问题,但无论如何不应当会产生数据丢失这种问题。现在sybase的内存没有pin,那他可以参与到交换的高达51G内存,就算只交换4分之一,也需要20G的pagespace。但pin处之后,有一点pagespace是够用的,还有9G的物理内存可以用于文件页面与计算页面。从这点来说,我并不是说要把pagespace配的超大,pagespace是只要够用就行,但如果发生了我所说的情况后就很难处理,最终还是客户倒霉。整个问题的关键是要找出为什么会使用了如此大的内存9G的内存,一般单独做服务器都够了。但没有找到原因之前,要么pin处内存,要么把pagespace扩大,还有就是减少sybase的内存。除此之外好象没有什么别的办法。现在sybase与IBM一起给出的结论是由于网络问题造成了很多的客户端不正常关闭,而内存资源未释放,所以用了很多的内存,造成pagespace不够。这个结论有点问题,如果客户端非正常关闭都会造成内存占用过多,那应当所有的sybase都出这个问题了,无论怎么样数据丢失对操作系统而言是不应当产生的。
作者: tyrone.dev 发布时间: 2008-07-24
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28