mysql5.6在导入时报innodb_table_stats不存在

来源:这里教程网 时间:2026-03-01 11:12:04 作者:

今天在处理问题时遇到这个报错 InnoDB: Error: Fetch of persistent statistics requested for table "mytest"."pomstd" but the required system tables mysql.innodb_table_stats and mysql.innodb_index_stats are not present or have unexpected structure. Using transient stats insttestd. InnoDB: Error: Table "mysql"."innodb_table_stats" not found. InnoDB: Recalculation of persistent statistics requested for table "mytest"."pomstd" but the required persistent statistics storage is not present or is corrupted. Using transient stats insttestd. 检查目录,没有找到这个文件 这是mysql5.6新增的性能分析文件,通常处理办法就是创建此文件: CREATE TABLE `innodb_table_stats` (    `database_name` varchar(64) COLLATE utf8_bin NOT NULL,    `table_name` varchar(64) COLLATE utf8_bin NOT NULL,    `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,    `n_rows` bigint(20) unsigned NOT NULL,    `clustered_index_size` bigint(20) unsigned NOT NULL,    `sum_of_other_index_sizes` bigint(20) unsigned NOT NULL,    PRIMARY KEY (`database_name`,`table_name`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0; CREATE TABLE `innodb_index_stats` (    `database_name` varchar(64) COLLATE utf8_bin NOT NULL,    `table_name` varchar(64) COLLATE utf8_bin NOT NULL,    `index_name` varchar(64) COLLATE utf8_bin NOT NULL,    `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,    `stat_name` varchar(64) COLLATE utf8_bin NOT NULL,    `stat_value` bigint(20) unsigned NOT NULL,    `sample_size` bigint(20) unsigned DEFAULT NULL,    `stat_description` varchar(1024) COLLATE utf8_bin NOT NULL,    PRIMARY KEY (`database_name`,`table_name`,`index_name`,`stat_name`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0;

相关推荐