Rumah  >  Artikel  >  pangkalan data  >  Bagaimana Boleh Memastikan Bekas MySQL Sedia Sebelum Meneruskan?

Bagaimana Boleh Memastikan Bekas MySQL Sedia Sebelum Meneruskan?

Barbara Streisand
Barbara Streisandasal
2024-11-17 10:04:03636semak imbas

How to Reliably Ensure a MySQL Container is Ready Before Proceeding?

Menunggu Bekas MySQL Dimulakan

Bekas Docker menyediakan persekitaran terpencil untuk menjalankan aplikasi. Apabila menggunakan berbilang bekas, seseorang selalunya perlu menyelaraskan kebergantungan mereka. Dalam kes ini, adalah penting untuk menunggu pangkalan data bekas MySQL sedia sebelum meneruskan tugas lain.

Percubaan sebelum ini melibatkan menjalankan skrip untuk menunggu MySQL siap, tetapi pendekatan ini tidak boleh dipercayai kerana kepada keadaan perlumbaan dengan skrip persediaan titik masuk. Mencari penyelesaian yang lebih mantap, pengguna menganggap perintah tidur bash, tetapi menyedari hadnya.

Pendekatan yang lebih elegan dan berkesan ialah menggunakan utiliti mysqladmin daripada pakej pelanggan mysql. Utiliti ini boleh ping pelayan sasaran untuk menentukan sama ada ia bertindak balas. Dengan menggabungkan ping mysqladmin dengan gelung tidur, seseorang boleh melaksanakan mekanisme menunggu yang mudah:

while ! mysqladmin ping -h"$DB_HOST" --silent; do
    sleep 1
done

Gelung ini akan berulang kali ping bekas MySQL sehingga ia bertindak balas, memastikan pangkalan data sedia sebelum meneruskan tugas lain.

Atas ialah kandungan terperinci Bagaimana Boleh Memastikan Bekas MySQL Sedia Sebelum Meneruskan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn