mysql修改存储引擎报错_修改mysql存储引擎备份数据库报错及解决方案

原因:由于监控服务器最近cpu负载比较高。(cpu4核心,负载2.7左右)感觉很奇怪,因为别的服务器mysql占用的资源并不多,因此我首先优化了数据库的配置文件。cpu稍微下降了一点,但是没有特别明显的变化。

于是,从mysql的存储引擎和日志考虑,结果发现默认用的引擎是myisam。好吧。换成innodb,(由于事先我没备份,就在配置文件修改了引擎,因为日志除了二进制其他并没有开启。所以没动它。重启数据库。

ok

d73ef8cbd9cc0b034dfcffcd16018ee3.png早就听说这两个引擎,区别,看来性能差别真大啊!

好吧。备份数据库吧!

使用备份全部数据库时候

mysqldump: Got error: 23: Out of resourceswhen opening file‘./mysql/jchigr32.MYD‘ (Errcode: 24) when using LOCK TABLES

517a5b9ab8fee19481a05f06ced1995b.png

原因

出现Outof resources when opening file ‘./xxx.MYD‘ (Errcode: 23)错误是

因为打开的文件数超过了my.cnf的--open-files-limit。open-files-limit选项

无法在mysql命令行直接修改,必须在my.cnf中设定,最大值是65536。

首先用ulimit-n命令查看下打开文件数限制:

默认是1024

解决

vim  /etc/my.cnf

open_files_limit=65536(最大)

055a13ac47bab36b12b1c66629cd0cd1.png

重启mysql  ok

4ce8b30d95ea7e5d268173810e6482a0.png

检查

mysqlcheck -uroot -pxxx  mysql

Error    : Youcan‘t use locks with log tables.

Error    : Table‘mysql.tempmix‘ doesn‘t exist

status   :Operation failed

mysql.tempmix1

Error    : Table‘mysql.tempmix1‘ doesn‘t exist

status   :Operation failed

mysql.tempmix4

Error    : Table‘mysql.tempmix4‘ doesn‘t exist

status   :Operation failed

好吧!请教谷歌大神

使用LOCK TABLES时,mysqldump的表不存在

症状

MySQL数据库转储失败,错误:

mysqldump: Goterror: 1146: Table ‘‘ doesn‘t exist when using LOCK TABLES

原因也许有人删除并重新创建InnoDB数据文件却忘了从数据库目录中删除InnoDB表的相应的.FRM文件,或者有人移动.FRM文件到另一个数据库。 请与show tables

不正确的权限和所有权上表文件MySQL数据目录

表已损坏

表中创建大写

解析度请与show tables ,如果表中未列出的举动.frm从数据库目录文件出来

权限和所有权在MySQL数据目录表的文件是不正确的,理想的所有者应该是MySQL用户和权限设置为660。

修复表

设置lower_case_table_names

如果以上所有点都ok然后尝试使用--skip-lock-tables参数用mysqldump 。

根据上面的思路,很快解决!

如果出现这种错误,建议单独备份数据库。

本文出自 “?唯一!” 博客,请务必保留此出处http://renzhiyuan.blog.51cto.com/10433137/1761241

修改mysql存储引擎备份数据库报错及解决方案

标签:修改   存储   引擎

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:http://renzhiyuan.blog.51cto.com/10433137/1761241

TAG标签:修改存储引擎

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值