我有一个 EC2 实例,其中安装了 Apache 和 Mysql 来运行基于 Web 的应用程序。与系统正常运行时相比,我现在遇到的需求略多一些。
因此(或者至少我认为如此),Mysql 服务出现问题。几个小时前,我能够重新启动我的 EC2 实例,然后启动 httpd 和 mysqld 以使一切恢复正常。
一小时后问题再次出现,同样的补救措施也无济于事。EC2 重新启动并且 httpd 启动,但 Mysql Daemon 在服务启动和重新启动请求上超时。
有人遇到过这个问题吗?或者有没有 Linux 专家可以给出建议?
任何帮助,将不胜感激。
一些额外的信息 - 运行 tail -10 /var/log/mysqld.log 并得到以下结果:
120225 18:35:56 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
120225 18:35:56 InnoDB: Started; log sequence number 0 6422679
120225 18:35:56 [ERROR] /usr/libexec/mysqld: Error writing file '/var/run/mysqld/mysqld.pid' (Errcode: 28)
120225 18:35:56 [ERROR] Can't start server: can't create PID file: No space left on device
120225 18:35:56 mysqld_safe Number of processes running now: 0
120225 18:35:56 mysqld_safe mysqld restarted
答案1
您的 /var 文件系统上没有剩余可用空间。您需要删除或移动一些文件。我建议设置一些自动监控,这样当任何文件系统的可用空间低于 20% 时,您就会收到通知。