我给服务器添加了新的 HP 内存,从 8GB 增加到 32GB。现在每隔几秒,/var/log/messages 中就会出现此错误消息。
Jan 8 20:13:08 vmware01 kernel: EDAC MC0: CE row 2, channel 2,
label "": (Branch=1 DRAM-Bank=6 RDWR=Read RAS=13788 CAS=2840,
CE Err=0x2000 (Correctable Non-Mirrored Demand Data ECC))
我在 Google 上搜索了错误信息,但一无所获。有人知道这是什么意思,以及如何修复它吗?
BIOS 和操作系统都可以看到全部 32 GB。
任何帮助都将不胜感激。
答案1
错误消息基本上意味着您安装的内存有故障。系统发现内存已损坏,ECC 能够纠正单比特错误,并提醒操作系统内存有问题。
有问题的 DRAM 是 Bank 6 中的 DRAM(很可能是双通道内存),因此请查看该位置以查找有故障的内存。
答案2
我最近在使用带有 AMD CPU 的 IBM 刀片服务器时遇到了这个问题。这是一款 64 位刀片服务器,我已经使用 8 GB 和 32 位 RedHat 3 运行多年,这意味着操作系统只能看到 4 GB。我将其升级到 64 位 RH 4,并开始收到非常相似的错误。我发现的研究表明,操作系统中的 EDAC 报告出现在版本 4 的某个时间点,大约 4.5。
这意味着我不知道是 4-8 GB 部分的问题还是操作系统现在报告了问题,所以我进入 BIOS 运行测试。基本测试没有显示错误,但需要数小时才能运行的高级测试最终显示出问题。将不同的 RAM 模块旋转到不同的插槽表明我的 4 个模块中有 2 个是坏的,并且测试在找到第一个模块时退出。在机器中放入总共 2 GB 的 4 个不同模块使机器运行良好。
多年来,机器如果不完全关闭电源就不会重新启动,这对于 HA 数据库服务器来说不是问题,但我也报告了这个问题。IBM 很好心地更换了我报告的 2 个 RAM 模块和整个主板,所以我不能保证 RAM 解决了这个问题。
底线:仔细检查您的 RAM。您可以尝试可启动 RAM 测试,例如 OS 磁盘。看来标准 RAM 测试程序是 32 位的,因此它们不会测试 4 GB 以上的内存。64 位 OS 磁盘可能包含一个可以测试的程序。