MySQL表不存在

我得到错误文件中的错误。

110803 6:51:26 InnoDB: Error: table `ims`.`temp_discoveryjobdetails` already exists in InnoDB internal InnoDB: data dictionary. Have you deleted the .frm file InnoDB: and not used DROP TABLE? Have you used DROP DATABASE InnoDB: for InnoDB tables in MySQL version <= 3.23.43? InnoDB: See the Restrictions section of the InnoDB manual. InnoDB: You can drop the orphaned table inside InnoDB by InnoDB: creating an InnoDB table with the same name in another InnoDB: database and copying the .frm file to the current database. InnoDB: Then MySQL thinks the table exists, and DROP TABLE will InnoDB: succeed. InnoDB: You can look for further help from InnoDB: http://dev.mysql.com/doc/refman/5.1/en/innodb-troubleshooting.html 

而当我这样做,就像从其他数据库复制frm文件到这里,并删除表,我得到以下错误,

 InnoDB: Error: trying to load index PRIMARY for table ims/temp_discoveryjobdetails InnoDB: but the index tree has been freed! 110803 6:50:26 InnoDB: Error: table `ims`.`temp_discoveryjobdetails` does not exist in the InnoDB internal InnoDB: data dictionary though MySQL is trying to drop it. InnoDB: Have you copied the .frm file of the table to the InnoDB: MySQL database directory from another database? InnoDB: You can look for further help from InnoDB: http://dev.mysql.com/doc/refman/5.1/en/innodb-troubleshooting.html 

请任何人帮助我。 也可以告诉我为什么这个错误即将到来。

编辑:

只有当磁盘大小已满并且使用截断表时,才会出现此问题。 此外,这只发生在5.1版本,而不是5.0版本。

试过这个? http://dev.mysql.com/doc/refman/5.1/en/innodb-troubleshooting-datadict.html

表的一个特殊问题是,MySQL服务器将数据字典信息保存在数据库目录中存储的.frm文件中,而InnoDB也将这些信息存储在表空间文件内的数据字典中。 如果移动.frm文件,或者服务器在数据字典操作过程中崩溃,则.frm文件的位置可能会与InnoDB内部数据字典中logging的位置不同步。