Mysql innodb错误解决 InnoDB: Error: table `mysql`.`innodb_table_stats`
admin
2023-05-17 07:22:47
0

通过ELK监控发现,程序连接mysql DB 失败,通过看程序的log和mysql的error log发现mysql中出现error

查看Mysql日志

发现 InnoDB: Error: table `mysql`.`innodb_table_stats` does not exist in the InnoDB internal

这个原因很明显 ,是mysql库的innodb_table_stats表损坏了。

首先登录mysql查看表是否存在?   结果:存在的。 

Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| innodb_index_stats        |
| innodb_table_stats        |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slave_master_info         |
| slave_relay_log_info      |
| slave_worker_info         |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |


  1. mysql>  show create table innodb_index_stats;  

  2. ERROR 1146 (42S02): Table'mysql.innodb_index_stats' doesn't exist  

  3. mysql>  

猜测是表损坏了,所以打算重新构建表


ls  /data/mysql/data/mysql

innodb_table_stats
 innodb_index_stats
 slave_master_info
 slave_relay_log_info
 slave_worker_info

发现文件存在,所以直接删除,重新创建。 

rm -rf  :

 innodb_table_stats
 innodb_index_stats
 slave_master_info
 slave_relay_log_info
 slave_worker_info


创建前检查mysql默认的存储引擎,如果为MyiSAM ,则在创建的时候,需要指定存储引擎为INNODB

 source  /usr/local/mysql/share/mysql_system_tables.sql  这个表的时候,请注意默认的存储引擎是否为innodb.

 个人操作,发现使用以上source并未能将以上损坏的表进行重新构建

尝试以下操作

1,先看这些表是否还存在,show tables ; 结果:不存在

      ls  ls  /data/mysql/data/mysql/        结果:不存在

2,尝试再次drop table      innodb_table_stats  purge ; (彻底删除表)

3,手动创建 innodb_table_stats   ,结果:成功

4,循环2,3 操作步骤,重新创建以上损坏的表。 


相关内容

热门资讯

“你头发都白了”,同守广西边防... “你头发都白了,模样还是没变,就是没有年轻时候那么帅了。”
小米手机再度涨价:旗舰最高上涨... 8月2日,小米商城价格更新,多款主力机型上调300元至500元不等。其中,REDMI Turbo 5...
“真实社交”售卖“优先访问权”... 据了解,购买这项服务的企业能够直接接入“真实社交”数据源,辅以人工智能技术解读信息,进而提前把握市场...
原创 狂... 英伟达正式官宣与 Safe Superintelligence(SSI)达成长期战略合作,总投资规模...
马斯克最新预言来了,钱要没用了... “以法莲是商人,手里有诡诈的天平,爱行欺骗!”——圣经 据红星新闻报道,本月,埃隆·马斯克在接受专...
遭欧盟22国“围攻”,西班牙怒... 西班牙首相桑切斯与22个欧盟成员国领导人激烈交锋后,由轮值主席国爱尔兰正式召集,欧盟将于本周二(8月...
创维电视42d9指示灯不亮 1、可能为电源插座插头的故障。2、可能为电源连接线的故障。3、可能为电视内部开关电源电路出了故障。4...
电视不通电指示灯不亮是什么原因 因为电源适配器发生了故障,就会导致电视不通电指示灯不亮;当然了,电视机也会因为开机的电源电路发生异常...
天然气灶电子打火一直不停 天然气灶电子打火一直不停发生这个现象大概率是因为打火装置发生了故障。天然气灶是通过高压电子发动打火装...
天然气打火灶打不着火 1、可能是电池没有电或者是天然气没有气了。2、天然气的管道出现了堵塞,就会导致天然气打火灶打不着火的...