MariaDB社区

标题: mysql 从库表错误 Wrong bytesec: 0-0-0 AT linkstart: 248586084 [打印本页]

作者: penghongya11    时间: 2012-6-29 11:37
标题: mysql 从库表错误 Wrong bytesec: 0-0-0 AT linkstart: 248586084
各位大侠,请问从库读写频繁的myiam表经常出现这种错误原因
Wrong bytesec: 0-0-0 AT linkstart: 248586084

环境如下:
1.主从结构
2.从库为了能够应付多主,所以采用多实例方式,一个实例对应一个主库
3.从库平常基本上只有本身主从两个链接在上面,只有有时人为要分析数据时候,才客户端链接上来查询数据的。

现在问题表现是,从库表如果平常不做全表扫描话,从自增ID看好像能够实时同步数据过来,但是只要一做全表扫描或者check table下,就会出现问题,另外问题都发现在千万级表上,其他百万左右表好像就没有这种错误,修复下后,就可以用了




有人知道,这总错误是啥原因导致的吗?总不能每次发现错误就要人为修复下,好麻烦啊  




作者: beingman    时间: 2012-6-29 13:25
MyISAM引擎的表是比较容易损坏,而且只有表级锁,做全表扫描的话,一般更新操作就只能等待查询结束,建议改用InnoDB存储引擎。
作者: penghongya11    时间: 2012-6-29 13:47
本帖最后由 penghongya11 于 2012-6-29 13:57 编辑

我就是从INNODB引擎转过来的,因为在INNODB下面报同样的错,而且更麻烦,出错后,因为表空间数据被损坏,会导致mysql在INNODB那启动不了,处理恢复起来更麻烦,

所以这种错误,我怀疑不是简单的引擎问题,而是设置或者我采用的多实例方式有问题,因为
1.出错的从库,除本身做主从的两个链接外,平时在上面根本没有任何链接,而主从是单进程,所以由于表锁啥的不同进程操作导致表损坏是不可能的

2.另外一个,我主是5.147的,而从是5.5 版本的,不知道是不是主从版本不一致导致的不

3.修复表后,过一段时间,同样问题会再次出现,而且是不可以未知的

4.我初步怀疑是,多实例间,内存共享问题,但没得到任何验证,所以如果了解多实例内存结构的大侠,请解释下,并且,如果出现内存不够用情况下,比如说,总物理内存8G,但两个实例各自最大内存为5G,开始时候内存消耗不大,后来逐步申请时候,导致不够,会出现什么问题?

请版主和各位看官多多发表意见,因为除了修复,我不知道这种错误来自那里,所以就更不谈不上解决



作者: hm3030    时间: 2012-6-29 14:24
MySQL部署在什么平台上?
配置参数?
OS硬件情况?
OS 32 or 64 bit?
你给的信息太少。。。。

作者: beingman    时间: 2012-6-29 15:06
penghongya11 发表于 2012-6-29 13:47
我就是从INNODB引擎转过来的,因为在INNODB下面报同样的错,而且更麻烦,出错后,因为表空间数据被损坏,会 ...



你说的“多实例”指的是多个mysqld进程存取同一套物理数据库文件吗?
作者: penghongya11    时间: 2012-6-29 18:24
hm3030 发表于 2012-6-29 14:24
MySQL部署在什么平台上?
配置参数?
OS硬件情况?

DELL R710    Raid 10   18G内存
操作系统是Centos 5.4 64位的
数据库主库版本:5.147
数据库从库版本:5.5

从库服务器上的mysql开了2个实例,分别做两台不同主库的(版本5.147)从库,不存在上面说的,多实例共享数据文件情况

从库每个实例,大概用不到8G的内存来分配各参数。

作者: beingman    时间: 2012-6-30 12:26
penghongya11 发表于 2012-6-29 18:24
DELL R710    Raid 10   18G内存
操作系统是Centos 5.4 64位的
数据库主库版本:5.147


感觉问题可能会出现在两方面:

1) 不一致版本的replication,虽然说MySQL参考手册上说支持从老版本到新版本的复制,但还是可能碰见一些问题;

2) MyISAM存储引擎,由于其数据保护机制的不完善那,即使在单机环境下也会出现数据损坏。

作者: kider    时间: 2012-7-2 10:41
恩。同时也看看MySQL的错误日志里的信息,可能会有些帮助。

另外赞同上面的说明。同步尽最大可能的保持版本一致,有很多好处,能有效的降低因为版本不同产生的问题;如果主机有问题,备机也可以及时的作为补充和替代,不会因为的版本的不同而有所顾虑;有些SQL的执行性能不会因为版本的不同而有差异。...




欢迎光临 MariaDB社区 (http://123.56.88.72/) Powered by Discuz! X3.2