Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk memasang mysql dalam docker dan tetapkannya menjadi tidak peka huruf besar-kecil

Bagaimana untuk memasang mysql dalam docker dan tetapkannya menjadi tidak peka huruf besar-kecil

PHPz
PHPzasal
2023-04-18 10:24:193024semak imbas

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.

Pasang Docker

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

Pasang MySQL

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

Menyelesaikan sensitiviti kes 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.

1. Ubah suai fail konfigurasi MySQL

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

2. Tambah pembolehubah persekitaran

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

Ringkasan

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!

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