Docker ialah teknologi kontena yang membolehkan penggunaan pantas, pemindahan dan pembungkusan aplikasi perisian. MySQL ialah pangkalan data hubungan biasa dalam industri Memasang MySQL dalam Docker boleh membina persekitaran pangkalan data tempatan dengan mudah. Walau bagaimanapun, dalam beberapa kes, MySQL mungkin sensitif huruf besar-besaran, menyebabkan beberapa masalah.
Artikel ini akan memperkenalkan cara memasang MySQL dalam Docker dan menyelesaikan masalah sensitiviti kes MySQL.
Mula-mula anda perlu memasang Docker Anda boleh memuat turun versi yang sesuai dengan anda dari tapak web rasmi dan memasangnya. Selepas pemasangan selesai, anda boleh memasukkan arahan berikut pada baris arahan untuk mengesahkan sama ada pemasangan berjaya:
docker version
Jika sesuatu yang serupa dengan yang berikut dipaparkan, Docker berjaya dipasang.
Client: Version: 18.03.1-ce API version: 1.37 Go version: go1.9.5 Git commit: 9ee9f40 Built: Thu Apr 26 07:21:22 2018 OS/Arch: darwin/amd64 Experimental: false Server: Engine: Version: 18.03.1-ce API version: 1.37 (minimum version 1.12) Go version: go1.9.5 Git commit: 9ee9f40 Built: Thu Apr 26 07:26:38 2018 OS/Arch: linux/amd64 Experimental: false
Sebelum memasang MySQL, anda perlu mencipta rangkaian untuk menyambungkan MySQL dan bekas lain. Masukkan arahan berikut pada baris arahan untuk mencipta rangkaian:
docker network create my-network
Kemudian, anda boleh menggunakan arahan berikut untuk menarik imej MySQL:
docker pull mysql
Selepas tarikan berjaya , anda boleh menggunakan arahan berikut untuk memulakan bekas MySQL. Parameter -d
menunjukkan berjalan dalam mod latar belakang, dan parameter -e
menunjukkan penetapan kata laluan pengguna root MySQL.
docker run --name my-mysql -d -e MYSQL_ROOT_PASSWORD=password --network my-network mysql
Selepas permulaan berjaya, anda boleh menggunakan arahan berikut untuk mengesahkan sama ada permulaan berjaya:
docker ps
Jika sesuatu yang serupa dengan yang berikut dipaparkan, bekas MySQL dimulakan dengan jayanya.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 29d316425b95 mysql "docker-entrypoint.s…" 5 seconds ago Up 4 seconds 3306/tcp my-mysql
Dalam MySQL, ia adalah sensitif huruf besar secara lalai. Ini akan menyebabkan beberapa masalah, seperti ralat semasa menjalankan JOIN, GROUP BY, ORDER BY dan operasi lain. Untuk menyelesaikan masalah ini, kaedah berikut boleh digunakan.
Masukkan bekas MySQL, ubah suai fail konfigurasi MySQL /etc/mysql/mysql.conf.d/mysqld.cnf, dan tambah kandungan berikut di bawah nod [mysqld] :
lower_case_table_names=1
Selepas menyimpan fail konfigurasi, mulakan semula bekas MySQL:
docker restart my-mysql
Apabila memulakan MySQL bekas, anda boleh menggunakan -e
Parameter menambah lower_case_table_names=1
pembolehubah persekitaran.
docker run --name my-mysql -d -e MYSQL_ROOT_PASSWORD=password -e lower_case_table_names=1 --network my-network mysql
Artikel ini memperkenalkan pemasangan MySQL dalam Docker dan menyelesaikan masalah sensitiviti kes MySQL. Semasa proses pembangunan, Docker menyediakan persekitaran yang mudah untuk menggunakan aplikasi dengan cepat dan mudah. Walau bagaimanapun, apabila menggunakan Docker, anda perlu mengetahui beberapa pengetahuan tentang Docker untuk mengurus kontena dengan lebih baik.
Atas ialah kandungan terperinci Bagaimana untuk memasang mysql dalam docker dan tetapkannya menjadi tidak peka huruf besar-kecil. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!