Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  docker mysql tidak dilaksanakan

docker mysql tidak dilaksanakan

王林
王林asal
2023-05-13 13:16:37946semak imbas

Docker ialah platform kontena sumber terbuka yang membantu pembangun membina, menggunakan dan menjalankan aplikasi dengan lebih mudah.

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas dan salah satu imej paling popular di Docker Hub. Walau bagaimanapun, kadangkala apabila menjalankan MySQL dalam Docker, anda akan menghadapi beberapa masalah, seperti MySQL tidak dapat dilaksanakan.

Dalam artikel ini, kami akan meneroka sebab mengapa MySQL Docker tidak dilaksanakan dan cara menyelesaikannya.

Analisis sebab

  1. Pelayan MySQL tidak dipasang dengan betul

Apabila menjalankan MySQL dalam Docker, anda mungkin mendapati pelayan MySQL tidak dipasang dengan betul. Ini mungkin disebabkan oleh bekas Docker tidak memuat turun imej MySQL dengan betul.

Untuk menyelesaikan masalah ini, anda boleh menggunakan arahan berikut untuk memuat turun imej MySQL:

docker pull mysql:latest
  1. Pelayan MySQL tidak dikonfigurasikan dengan betul

Malah jika pelayan MySQL dipasang dengan betul, Mungkin juga terdapat isu konfigurasi. Sebagai contoh, jika pelayan MySQL tidak dikonfigurasikan dengan betul, ia mungkin gagal dimulakan, mengakibatkan ketidakupayaan untuk melaksanakan.

Untuk menyelesaikan masalah ini, anda boleh menggunakan arahan berikut untuk memulakan pelayan MySQL di dalam bekas Docker:

docker run --name mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag

Di mana PASSWORD ialah kata laluan akar MySQL anda dan teg ialah teg versi MySQL yang anda mahukan untuk digunakan.

  1. Isu kebenaran direktori pelekap pangkalan data

Apabila menjalankan pelayan MySQL dalam Docker, jika kebenaran direktori pelekap pangkalan data tidak dikonfigurasikan dengan betul, MySQL mungkin tidak dapat dilaksanakan.

Untuk menyelesaikan masalah ini, anda boleh menggunakan arahan berikut untuk memulakan bekas Docker dan mengkonfigurasi kebenaran direktori pelekap pangkalan data:

docker run --name mysql -v /your/data/dir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag --default-authentication-plugin=mysql_native_password

Di mana, /your/data/dir ialah pangkalan data mount yang anda ingin konfigurasikan direktori, PASSWORD ialah kata laluan akar MySQL anda, dan teg ialah teg versi MySQL yang anda mahu gunakan.

Penyelesaian

  1. Periksa sama ada imej MySQL dipasang dengan betul

Seperti yang dinyatakan sebelum ini, jika imej MySQL tidak dipasang dengan betul, MySQL mungkin tidak melaksanakan . Anda boleh menggunakan arahan berikut untuk menyemak sama ada imej MySQL dipasang dengan betul:

docker images | grep mysql

Jika terdapat rentetan mysql dalam output, imej MySQL dipasang dengan betul.

  1. Gunakan teg versi yang betul

Jika anda menggunakan teg versi MySQL yang tidak disokong, ia mungkin menyebabkan MySQL tidak dapat dilaksanakan. Untuk menyelesaikan isu ini, anda boleh melihat teg versi yang tersedia pada masa ini menggunakan arahan berikut:

docker search mysql

Kemudian, mulakan bekas MySQL dengan teg versi yang disokong.

  1. Semak status pelayan MySQL

Jika pelayan MySQL tidak dimulakan, tiada pertanyaan boleh dilaksanakan. Untuk menyemak sama ada pelayan MySQL berfungsi dengan betul, anda boleh menggunakan arahan berikut:

docker ps -a

Jika bekas MySQL tidak berjalan, anda boleh menggunakan arahan berikut untuk memulakan bekas MySQL:

docker start mysql
  1. Semak direktori hang Mount pangkalan data

Jika direktori pelekap pangkalan data bekas MySQL tidak dikonfigurasikan dengan betul, pelaksanaan akan gagal. Anda boleh menggunakan arahan berikut untuk menyemak sama ada direktori pelekap pangkalan data dikonfigurasikan dengan betul:

docker inspect mysql

Jika direktori pelekap pangkalan data tidak dikonfigurasikan dengan betul, anda boleh menggunakan arahan berikut untuk memulakan semula bekas MySQL:

docker stop mysql
docker rm mysql
docker run --name mysql -v /your/data/dir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -d mysql:tag --default-authentication-plugin=mysql_native_password

Di mana, / your/data/dir ialah direktori pelekap pangkalan data yang ingin anda konfigurasikan, PASSWORD ialah kata laluan akar MySQL anda dan teg ialah teg versi MySQL yang anda mahu gunakan.

Kesimpulan

Menghadapi masalah bukan pelaksanaan semasa menjalankan Docker MySQL mungkin mempunyai pelbagai sebab, termasuk pemasangan pelayan MySQL yang salah, konfigurasi pelayan yang salah, isu kebenaran, dsb. Untuk menyelesaikan isu ini, anda boleh menggunakan penyelesaian yang disediakan dalam artikel ini. Pada masa yang sama, adalah perlu untuk memberi perhatian kepada pembelajaran dan amalan teknologi kontena dan memupuk keupayaan teknikal profesional untuk menggunakan Docker dengan lebih baik untuk membina persekitaran pembangunan perisian anda sendiri.

Atas ialah kandungan terperinci docker mysql tidak dilaksanakan. 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