首页 文章

AWS MySql RDS:“从存储引擎获得错误28”

提问于
浏览
0

我正在开发一个相对较小的应用程序,为大约1,500名用户提供服务,并在大约300兆的Mysql数据库上运行 . 整个系统在AWS上运行,在Tomcat 8上运行Grails应用程序的单个专用EC2节点和一个专用的Mysql RDS实例 . 该系统已在 生产环境 中运行了大约三年,没有数据库问题 . 两个最大的表包含大约40k记录 . 该应用程序使用Grails和Java 1.7构建 .

昨天我们的应用程序开始抛出以下异常,其基本错误消息为:

“从存储引擎得到错误28”

RDS管理Web控制台提供的日志为空 .

除了大多数消息指出磁盘空间不足外,谷歌搜索还没有透露任何有助于我们解决问题的有希望的潜在客户 . 鉴于大多数搜索结果都是指磁盘空间 . 作为软件开发人员,而不是具有重要Mysql专业知识的DBA,我们增加了Mysql RDS实例的存储空间 . 不幸的是,今天我们的应用程序仍在零星地抛出相同的异常 . 创建了我们的Mysql DRS实例,其中有15个空间 - 这是我们的应用程序使用的几个数量级的额外空间 - 我们很遗憾这个问题的根本原因是什么 . 我们的猜测是,我们正在遇到一些开箱即用的Mysql限制,但不知道它可能是什么或如何解决它 . 实际上,我们托管RDS的全部原因是为了避免这类问题 .

做一些谷歌搜索,这似乎是一个有点常见的Mysql错误,但没有任何具体的痕迹供我们遵循 . 大多数建议都谈到检查文件系统或“inode”空间 . 鉴于这是AWS上的托管Mysql RDS实例,我不确定是否或如何检查这些事情 . 查看RDS实例的CloudWatch,我可以看到CPU处于空闲状态,并且实例大大低于15 gig存储限制 .

有没有人对我们进行调查?

鉴于我们是RDS的新手,您能否请我们指出任何文档,或者 - 甚至更好 - 建议我们可以在RDS控制台中调整哪些设置 - 以帮助防止发生此错误?理想情况下,我们转向RDS认为,如果这是一个mysql大小调整或扩展问题,转移到RDS将解决问题 . 作为最后的手段,今天早上我们删除了大约20k排不必要的数据 . 不幸的是,问题仍然存在,我们继续遇到这个问题 .

几个问题:

  • 我们可以调整任何RDS设置以避免此问题吗?

  • 可以通过迁移到更大的RDS实例来解决这个问题吗?

  • 如果我们搬到Aurora,我们会遇到这个问题吗?

1 回答

  • 0

    从您的评论中,这绝对是存储问题的一个低点 . 因为13 Gb的存储空间非常少 . 您可以在仪表板中查看免费的可用存储空间 . 在监控下的“存储”指标中查看此屏幕截图,如果它超出红线,您将开始获得错误28.您将不得不增加RDS实例的存储空间或释放一些空间 . 我建议增加存储空间以避免将来出现此问题 .

    enter image description here

相关问题