ホームページ >データベース >mysql チュートリアル >Docker コンテナで MySQL の準備を確保するにはどうすればよいですか?
Docker コンテナでの MySQL の準備状況の確認
複数の Docker コンテナをデプロイする場合、他のタスクに進む前にサービスの可用性を判断することが重要です。 MySQL コンテナは、初期化スクリプトが原因でタイミングの問題に特に敏感です。これにより、完全に準備が整う前にスクリプトがデータベースにアクセスしようとすると、エラーが発生する可能性があります。
この課題に対処するには、Bash スリープを使用する代わりに、mysql-client パッケージに含まれる mysqladmin ユーティリティを利用することができます。 。 mysqladmin と待機ループを組み合わせることで、MySQL の準備状況を確実にチェックできます。
実装方法は次のとおりです。
while ! mysqladmin ping -h"$DB_HOST" --silent; do sleep 1 done
このスクリプトでは、ping コマンドは、への接続を確立しようとします。 MySQL は、サービスがまだ利用できない場合には 0 以外のステータスを返します。 --silent オプションは出力を抑制するため、繰り返しのチェックに最適です。
この待機ループを組み込むことで、MySQL が完全に起動してクエリを受け入れる準備ができた場合にのみ後続のスクリプトが実行されるようになり、潜在的なエラーを排除できます。導入ワークフローを改善します。
以上がDocker コンテナで MySQL の準備を確保するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。