我在 Windows 2008 服务器上运行 MySQL。其中一个表(> 100 万条记录)似乎已损坏。mysql 错误日志显示:
InnoDB: Error: trying to access page number 197105 in space 89,
InnoDB: space name dbname/tablename,
InnoDB: which is outside the tablespace bounds.
InnoDB: Byte offset 0, len 16384, i/o type 10.
InnoDB: If you get this error at mysqld startup, please check that
InnoDB: your my.cnf matches the ibdata files that you have in the
InnoDB: MySQL server.
Run Code Online (Sandbox Code Playgroud)
根据此错误消息,我检查了my.cnf中的相关行:
innodb_data_home_dir = "C:/xampp/mysql/data"
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = "C:/xampp/mysql/data"
Run Code Online (Sandbox Code Playgroud)
这正是数据所在的位置。ibdata1 …