我正在Windows 2012服务器上运行MySQL(5.7)。该表之一(> 100万条记录)似乎已损坏。 mysql错误日志显示
2019-01-16T09:41:09.256990Z 0 [Note] InnoDB: Buffer pool(s) load completed at 190116 14:41:09
2019-01-16T09:41:25.153201Z 2 [Warning] IP address 'ip' could not be resolved: No such host is known.
2019-01-16T09:41:25.620502Z 3 [ERROR] InnoDB: Trying to access page number 3 in space 470, space name shop/products, which is outside the tablespace bounds. Byte offset 0, len 16384, i/o type read. If you get this error at mysqld startup, please check that your my.cnf matches the ibdata files that you have in the MySQL server.
2019-01-16T09:41:25.623268Z 3 [ERROR] InnoDB: Server exits.
当我在此表中插入记录时出现此问题。该表有22个索引列,其中之一是FULLTEXT。
我也尝试过innodb_force_recovery = [1-6],但是我无法转储产品表。每当我尝试访问该表时,它都会使数据库服务器崩溃。
有没有办法获取转储或恢复该表。我有陈旧的备份,因此无法使用该备份。谢谢:)
MYSQL服务器详细信息:
版本5.7(32位)
Windows Server 2012
数据库引擎:InnoDB
已更新
我正面临一个奇怪的问题。当我执行表状态命令时,它显示行数为零,
但是在mysql数据文件夹中,products.ibd文件的大小为4GB。
SHOW TABLE STATUS FROM shop LIKE 'products';
操作系统的文件大小