I am having some problems with constant table corruption on a database.  I have
now had this occur on two different operating systems with two different
versions of MySQL.  I edit these tables using Phpmyadmin (again two different
version) and eventually, either after 1-5 actions, the table gets corrupted and
get a message like this:

[EMAIL PROTECTED]:d2 MBPlatforms]myisamchk -s *.MYI
myisamchk: ISAM file Manus.MYI
myisamchk: error: Size of datafile is: 620               Should be: 640
myisamchk: error: Record-count is not ok; is 16           Should be: 15
myisamchk: warning: Found         16 parts                Should be: 17 parts
MyISAM-table 'Manus.MYI' is corrupted
Fix it using switch "-r" or "-o"

And then something like this in the mysql.log file:

040312 01:58:40  mysqld started
/usr/libexec/mysqld: ready for connections
040312  2:01:59  read_const: Got error 127 when reading table ./MBPlatforms/IOs
040312  2:01:59  read_const: Got error 127 when reading table ./MBPlatforms/IOs
040312  2:02:09  read_const: Got error 127 when reading table ./MBPlatforms/IOs

And this from PHPmyAdmin:

Error

SQL-query :  

SELECT * 
FROM `Manus` 
LIMIT 0, 30 

MySQL said: 

Got error 127 from table handler

I have included my table structures below (sorry its long!):

CREATE TABLE `AGPs` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(20) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;

# --------------------------------------------------------

#
# Table structure for table `Audios`
#

CREATE TABLE `Audios` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=14 ;

# --------------------------------------------------------

#
# Table structure for table `FormFactors`
#

CREATE TABLE `FormFactors` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

# --------------------------------------------------------

#
# Table structure for table `IOs`
#

CREATE TABLE `IOs` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=6 ;

# --------------------------------------------------------

#
# Table structure for table `Manus`
#

CREATE TABLE `Manus` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=19 ;

# --------------------------------------------------------

#
# Table structure for table `MemorySlots`
#

CREATE TABLE `MemorySlots` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=7 ;

# --------------------------------------------------------

#
# Table structure for table `Memorys`
#

CREATE TABLE `Memorys` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=8 ;

# --------------------------------------------------------

#
# Table structure for table `Motherboards`
#

CREATE TABLE `Motherboards` (
  `ID` int(11) NOT NULL auto_increment,
  `ManuID` int(11) NOT NULL default '0',
  `NorthBridgeID` int(11) NOT NULL default '0',
  `SouthBridgeID` int(11) NOT NULL default '0',
  `MemoryID` int(11) NOT NULL default '0',
  `PlatformID` int(11) NOT NULL default '0',
  `AudioID` int(11) NOT NULL default '0',
  `NetworkID` int(11) NOT NULL default '0',
  `PCIID` int(11) NOT NULL default '0',
  `PCIeID` int(11) NOT NULL default '0',
  `SATAID` int(11) NOT NULL default '0',
  `RAIDID` int(11) NOT NULL default '0',
  `MemorySlotID` int(11) NOT NULL default '0',
  `Name` varchar(50) NOT NULL default '',
  `AGPID` int(11) NOT NULL default '0',
  `FormFactorID` int(11) NOT NULL default '0',
  `Review` varchar(150) NOT NULL default '',
  `Image` varchar(150) default NULL,
  `IOID` int(11) NOT NULL default '0',
  `Misc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=128 ;

# --------------------------------------------------------

#
# Table structure for table `Networks`
#

CREATE TABLE `Networks` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=10 ;

# --------------------------------------------------------

#
# Table structure for table `NorthBridges`
#

CREATE TABLE `NorthBridges` (
  `ID` int(11) NOT NULL auto_increment,
  `ManuID` int(11) NOT NULL default '0',
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=27 ;

# --------------------------------------------------------

#
# Table structure for table `PCIes`
#

CREATE TABLE `PCIes` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

# --------------------------------------------------------

#
# Table structure for table `PCIs`
#

CREATE TABLE `PCIs` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=8 ;

# --------------------------------------------------------

#
# Table structure for table `Platforms`
#

CREATE TABLE `Platforms` (
  `ID` int(11) NOT NULL auto_increment,
  `ManuID` int(11) NOT NULL default '0',
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=6 ;

# --------------------------------------------------------

#
# Table structure for table `RAIDs`
#

CREATE TABLE `RAIDs` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=5 ;

# --------------------------------------------------------

#
# Table structure for table `SATAs`
#

CREATE TABLE `SATAs` (
  `ID` int(11) NOT NULL auto_increment,
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;

# --------------------------------------------------------

#
# Table structure for table `SouthBridges`
#

CREATE TABLE `SouthBridges` (
  `ID` int(11) NOT NULL auto_increment,
  `ManuID` int(11) NOT NULL default '0',
  `Name` varchar(50) NOT NULL default '',
  `Desc` text NOT NULL,
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=14 ;


And here is the output of some data from a table that is corrupting:

#
# Dumping data for table `IOs`
#

INSERT INTO `IOs` VALUES (1, 'Standard', 'There are standard I/O ports: PS2,
serial, parallel, USB 1.1, etc. ');
INSERT INTO `IOs` VALUES (2, 'USB2.0 and Firewire', 'Standard I/O features as
well as USB2.0 and Firewire options.');
INSERT INTO `IOs` VALUES (3, 'USB2.0', 'Standard I/O features as well as
USB2.0.');
INSERT INTO `IOs` VALUES (4, 'USB 2.0 and Optional Firewire', 'May be necessary
to purchase firewire    \0asdfasdfasdfasdfasdf');

-->> I don't know what this last part is: ^

This can happen to different tables at different times.  Doing a REPAIR TABLE
option will fix it, but in the mean time all of my websites and php code hangs
on whatever tables are "locked".

I desperately need some assistance here, so anything you can do for me would be
great.

Thank you!!!

Ryan Shrout

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to