如何确定 Docker 容器中的 MySQL 准备情况
部署多个 Docker 容器可能会给在继续相关操作之前确保数据库可用性带来挑战。当脚本因未完成的 MySQL 设置入口点脚本而失败时,此问题变得明显。
解决方案:利用 mysqladmin 验证 MySQL 就绪情况
要避免此类失败,请考虑安装mysql-client 包并利用 mysqladmin 命令。这种方法允许您 ping 目标 MySQL 服务器,如下面的代码片段所示:
while ! mysqladmin ping -h"$DB_HOST" --silent; do sleep 1 done
这个 while 循环一直持续到目标主机对 ping 做出积极响应,表明 MySQL 已准备好进行查询。 sleep 命令在 ping 尝试之间引入一秒的延迟,从而使数据库有充足的时间进行初始化。
此方法的优点
通过在等待循环中使用 mysqladmin,一旦 MySQL 启动并运行,您就可以自信地继续下游操作,确保可靠且高效地部署 Docker 容器。
以上是如何确保 Docker 容器中的 MySQL 就绪:mysqladmin 实用指南?的详细内容。更多信息请关注PHP中文网其他相关文章!