ERROR 1033 (HY000): Incorrect information in file: 'abc.frm' 问题解决

今天在开发时,发现程序无法链接数据库,查看数据库状态时,报错如下:

ERROR 1033 (HY000): Incorrect information in file: 'abc.frm'

在网上搜索了下,有的人说repaire table abc,尝试了没用。

有人说表结构被破坏了,需要重新建表,如果是这样,那将是一个灾难,虽然都是测试数据,但重头搞个数据库,以前的数据都没有了。

在执行show innodb status时,报错了

ERROR 1235 (42000): Cannot call SHOW INNODB STATUS because skip-innodb is defined

立即去看my.cnf里面有没有定义skip-innodb,很奇怪。

最后看到mysql的错误日志里面写着:

130829 17:20:48 [Warning] Changed limits: max_open_files: 1024  max_connections: 200  table_cache: 407
130829 17:20:48  InnoDB: Error: cannot allocate 3221241856 bytes of
InnoDB: memory with malloc! Total allocated memory
InnoDB: by InnoDB 37279104 bytes. Operating system errno: 12
InnoDB: Check if you should increase the swap file or
InnoDB: ulimits of your operating system.
InnoDB: On FreeBSD check you have compiled the OS with
InnoDB: a big enough maximum process size.
InnoDB: Note that in most 32-bit computers the process
InnoDB: memory space is limited to 2 GB or 4 GB.
InnoDB: We keep retrying the allocation for 60 seconds...
InnoDB: Fatal error: cannot allocate the memory for the buffer pool


找到原因了 ,innodb使用了过多的内存了,系统的内存不够了,于是调低阈值

innodb_buffer_pool_size  1000M 

重启数据库,OK啦。

以后出现问题还是记得及时看日志。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值