Rumah Operasi dan penyelenggaraan Docker Bagaimana docker menyelesaikan masalah kegagalan untuk memulakan mysql

Bagaimana docker menyelesaikan masalah kegagalan untuk memulakan mysql

Mar 31, 2023 pm 06:20 PM

Apabila menggunakan docker untuk menggunakan mysql, anda mungkin menghadapi kegagalan permulaan. Artikel ini akan menerangkan secara terperinci cara menyelesaikan situasi ini.

1. Penerangan Masalah

Mysql ialah pangkalan data hubungan yang sangat popular, dan Docker ialah teknologi kontena. Menggunakan Docker membolehkan kami menggunakan pangkalan data Mysql dengan mudah, tetapi kadangkala memulakan bekas Mysql gagal. Kami mendapati bahawa permulaan gagal apabila menggunakan arahan Docker berikut untuk memulakan bekas Mysql:

docker run --name mysql -e MYSQL_ROOT_PASSWORD=mypassword -d mysql:5.7
Salin selepas log masuk

2. Analisis masalah

Apabila memulakan bekas mengikut arahan di atas, -e parameter menentukan pembolehubah persekitaran , di mana MYSQL_ROOT_PASSWORD ialah kata laluan pengguna root Mysql. mysql: 5.7 ialah versi cermin pangkalan data Mysql. Walau bagaimanapun, kadangkala kita menghadapi kegagalan untuk memulakan bekas. Pada masa ini, kita boleh menganalisis punca ralat dengan melihat log bekas permulaan.

docker logs mysql
Salin selepas log masuk
Salin selepas log masuk

Didapati bekas Mysql terhempas semasa ia dimulakan. Oleh itu, kita perlu mencari punca kesilapan.

3. Penyelesaian Masalah

Kita boleh menyelesaikan masalah ini melalui langkah-langkah berikut:

1. Periksa sama ada bekas itu berjalan

docker ps
Salin selepas log masuk

Jika bekas itu sudah Semasa berjalan, kita hanya perlu melihat log kontena.

2. Lihat log kontena

docker logs mysql
Salin selepas log masuk
Salin selepas log masuk

Mesej ralat berikut boleh ditemui dalam log:

[ERROR] [MY-012144] [InnoDB] ./ibdata1 can't be opened in read-write mode
[ERROR] [MY-012930] [InnoDB] Plugin initialization aborted with error Generic error. 
[ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine: 0
[ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
[ERROR] [MY-010119] [Server] Aborting
Salin selepas log masuk

Dengan menganalisis log ralat, kita dapat melihat bahawa Mysql gagal dimulakan Sebabnya ialah direktori data tidak boleh ditulis. Untuk menyelesaikan masalah ini, kita perlu mencari lokasi direktori data dan menetapkan kebenarannya kepada boleh tulis.

3 Lihat direktori data bekas Mysql

docker inspect mysql | grep -i datadir
Salin selepas log masuk

Dalam hasil keluaran, kita boleh mencari direktori data bekas Mysql, seperti yang ditunjukkan di bawah:

"DataDir": "/var/lib/mysql"
Salin selepas log masuk

Kita perlu menetapkan kebenarannya supaya boleh ditulis, sila gunakan arahan berikut untuk melihat dan menukar kebenaran direktori:

docker exec -it mysql bash
chmod -R 777 /var/lib/mysql
exit
Salin selepas log masuk

Kemudian kita boleh memulakan semula bekas:

docker start mysql
Salin selepas log masuk

Selepas langkah di atas, Apabila kita memulakan bekas Mysql semula, ia boleh bermula dengan jayanya.

4. Ringkasan

Artikel ini menyediakan penyelesaian kepada kegagalan Docker untuk memulakan Mysql. Jika bekas Mysql gagal dimulakan, kita boleh mencari punca ralat dengan menyemak log kontena dan menyelesaikannya tepat pada masanya.

Atas ialah kandungan terperinci Bagaimana docker menyelesaikan masalah kegagalan untuk memulakan mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Apr 06, 2025 am 12:01 AM

Docker adalah kemahiran yang mesti ada untuk jurutera DevOps. 1.Docker adalah platform kontena sumber terbuka yang mencapai pengasingan dan mudah alih dengan aplikasi pembungkusan dan kebergantungan mereka ke dalam bekas. 2. Docker bekerja dengan ruang nama, kumpulan kawalan dan sistem fail bersekutu. 3. Penggunaan asas termasuk mencipta, menjalankan dan menguruskan bekas. 4. Penggunaan lanjutan termasuk menggunakan DockerCompose untuk menguruskan aplikasi multi-kontainer. 5. Kesilapan umum termasuk kegagalan kontena, masalah pemetaan pelabuhan, dan masalah ketekunan data. Kemahiran penyahpepijatan termasuk log melihat, memasukkan bekas, dan melihat maklumat terperinci. 6. Pengoptimuman prestasi dan amalan terbaik termasuk pengoptimuman imej, kekangan sumber, pengoptimuman rangkaian dan amalan terbaik untuk menggunakan Dockerfile.

Docker Security Hardening: Melindungi bekas anda dari kelemahan Docker Security Hardening: Melindungi bekas anda dari kelemahan Apr 05, 2025 am 12:08 AM

Kaedah Peningkatan Keselamatan Docker termasuk: 1. Gunakan parameter-cap-drop untuk menghadkan keupayaan Linux, 2. Buat bekas baca sahaja, 3 set tag Selinux. Strategi ini melindungi bekas dengan mengurangkan pendedahan kelemahan dan mengehadkan keupayaan penyerang.

Jilid Docker: Menguruskan data berterusan dalam bekas Jilid Docker: Menguruskan data berterusan dalam bekas Apr 04, 2025 am 12:19 AM

Dockervolumes memastikan data tetap selamat apabila bekas dimulakan semula, dipadam, atau berhijrah. 1. Buat Jilid: DockervolumecreatemyData. 2. Jalankan bekas dan gunung: dockerrun-it-vmydata:/app/dataubuntubash. 3. Penggunaan lanjutan termasuk perkongsian data dan sandaran.

Menggunakan Docker dengan Linux: Panduan Komprehensif Menggunakan Docker dengan Linux: Panduan Komprehensif Apr 12, 2025 am 12:07 AM

Menggunakan Docker di Linux dapat meningkatkan kecekapan pembangunan dan penempatan. 1. Pasang Docker: Gunakan skrip untuk memasang Docker di Ubuntu. 2. Sahkan pemasangan: Jalankan Sudodockerrunhello-World. 3. Penggunaan Asas: Buat kontena Nginx Dockerrun-Namemy-Nginx-P8080: 80-Dnginx. 4. Penggunaan Lanjutan: Buat imej tersuai, bina dan lari menggunakan Dockerfile. 5. Pengoptimuman dan amalan terbaik: Ikuti amalan terbaik untuk menulis dockerfiles menggunakan pelbagai peringkat membina dan dockercompose.

Rangkaian Docker Lanjutan: Menguasai Jambatan, Rangkaian Host & Overlay Rangkaian Docker Lanjutan: Menguasai Jambatan, Rangkaian Host & Overlay Apr 03, 2025 am 12:06 AM

Docker menyediakan tiga mod rangkaian utama: rangkaian jambatan, rangkaian tuan rumah dan rangkaian overlay. 1. Rangkaian Jambatan sesuai untuk komunikasi antara konainer pada hos tunggal dan dilaksanakan melalui jambatan maya. 2. Rangkaian tuan rumah sesuai untuk senario di mana rangkaian berprestasi tinggi diperlukan, dan kontena secara langsung menggunakan timbunan rangkaian tuan rumah. 3. Rangkaian Overlay sesuai untuk kluster Dockerswarm Multi-Host, dan komunikasi silang host direalisasikan melalui lapisan rangkaian maya.

Docker Swarm: Membina Kluster Kontena Skala dan Tahan Docker Swarm: Membina Kluster Kontena Skala dan Tahan Apr 09, 2025 am 12:11 AM

Dockerswarm boleh digunakan untuk membina kelompok kontena berskala dan sangat tersedia. 1) Mulakan kelompok kawanan menggunakan DockersWarminit. 2) Sertai kelompok kawanan untuk menggunakan dockerswarmjoin-terperangkap:. 3) Buat perkhidmatan menggunakan DockerServiceCreate-Namemy-Nginx-Replicas3nginx. 4) Menyebarkan perkhidmatan kompleks menggunakan dockerStackDeploy-cdocker-compose.ymlmyApp.

Pemantauan Docker: Mengumpulkan Metrik dan Penjejakan Kesihatan Bekas Pemantauan Docker: Mengumpulkan Metrik dan Penjejakan Kesihatan Bekas Apr 10, 2025 am 09:39 AM

Inti pemantauan Docker adalah untuk mengumpul dan menganalisis data operasi bekas, terutamanya termasuk petunjuk seperti penggunaan CPU, penggunaan memori, trafik rangkaian dan cakera I/O. Dengan menggunakan alat seperti Prometheus, Grafana dan Cadvisor, pemantauan komprehensif dan pengoptimuman prestasi bekas dapat dicapai.

Cara Membaca Versi Docker Cara Membaca Versi Docker Apr 15, 2025 am 11:51 AM

Untuk mendapatkan versi Docker, anda boleh melakukan langkah -langkah berikut: Jalankan arahan Docker "Docker -version" untuk melihat versi klien dan pelayan. Untuk MAC atau Windows, anda juga boleh melihat maklumat versi melalui tab versi Docktop GUI atau menu desktop Docker.

See all articles