首页 > 解决方案 > MySQL 不会在 Bitnami EC2 实例上启动

问题描述

我的 EC2 实例空间不足,因此按照指示备份和恢复到更大的卷。在我这样做之后,我无法再启动 MySQL。

当我尝试使用 Bitnami 在我的 EC2 实例上启动 MySQL 时,它只是挂在那里。看起来是因为我根本没有套接字文件应该在的地方/opt/bitnami/mysql/tmp/mysql.sock。相反,我在那里只有一个锁定文件(/opt/bitnami/mysql/tmp/mysql.sock.lock)。

我发现的一个消息来源说要重新创建指向另一个.sock文件的符号链接,但我认为因为它是 Bitnami,它位于不同的位置,我不确定它在哪里。

当然,这个袜子文件可能只是一个红鲱鱼,所以我也在挖掘其他可能的原因。以前有没有其他人发生过这种情况?这似乎是一个可能很常见的问题,但除了vanilla Bitnami docs之外,我还没有找到太多关于此的信息。

标签: mysqlwordpressamazon-web-servicesamazon-ec2bitnami

解决方案


如果您查看 Bitnami 拥有的 MySQL 脚本(位于/opt/bitnami/mysql/scripts/ctl.sh),您可以看到 MySQL 日志文件位于/opt/bitnami/mysql/data/mysqld.logBitnami 实例上。查看最近的日志,我在日志末尾显示以下内容:

[Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
[Note] Server hostname (bind-address): 'x.x.x.x'; port: xxxx
[Note]   - 'xxx.x.x.x' resolves to 'xxx.x.x.x';
[Note] Server socket created on IP: 'xxx.x.x.x'.
[ERROR] Unix socket lock file is empty /opt/bitnami/mysql/tmp/mysql.sock.lock.
[ERROR] Unable to setup unix socket lock file.
[ERROR] Aborting

最初我认为 SSL 是问题,但其他人指出这只是一个警告。

最终我能够通过备份锁定文件(以防万一)然后删除它来解决这个问题:

# Back that thang up
sudo cp /opt/bitnami/mysql/tmp/mysql.sock.lock /opt/bitnami/mysql/tmp/mysql.sock.lock.backup
# Remove it
sudo rm /opt/bitnami/mysql/tmp/mysql.sock.lock
# Fire it up again
sudo /opt/bitnami/ctlscript.sh start mysql

推荐阅读