mysql - 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之外,我还没有找到太多关于此的信息。
解决方案
如果您查看 Bitnami 拥有的 MySQL 脚本(位于/opt/bitnami/mysql/scripts/ctl.sh
),您可以看到 MySQL 日志文件位于/opt/bitnami/mysql/data/mysqld.log
Bitnami 实例上。查看最近的日志,我在日志末尾显示以下内容:
[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
推荐阅读
- python - 将对象属性分组到 Marshmallow 模式中的新字典中
- javascript - 如何在鼠标悬停时显示按钮?
- hyperledger-fabric - composer playground 默认添加参与者
- html - 如何在提交后禁用整个 redux 表单,然后在清除所有字段后重新启用它
- elasticsearch - 如何使用 lucene 查询语法在其中执行带有逗号的文本搜索?
- android - 是否可以在非 root Android 上创建虚拟输入设备?
- c++ - 如何在 windows/MSVC 环境中使用 Qt 编译 CUDA 代码?
- javascript - 复制数组元素修改并再次添加
- python-2.7 - 非英伟达硬件的计算机视觉
- java - 为什么在 Java 中执行字节码验证?