Bu dökümanda Docker üzerinde MySQL kurulumu için 5.7 sürümü kullanılmıştır. Tüm sürümler ve resmi hub’a
https://hub.docker.com/r/mysql/mysql-server/ adresinden ulaşabilirsiniz.
Docker MySQL Kurulumu
Mevcut imajımız yoksa, kullanmak istediğimiz sürümü yüklüyoruz.
docker pull mysql/mysql-server:5.7
Bu komut sonrasında MySQL 5.7 ortamımızda kullanılabilir hale gelecektir. İmajı kullanarak MySQLSunucum adı ile bir container başlatıyoruz.
docker run --name=MySQLSunucum -p 3306:3306 -d mysql/mysql-server:5.7
MySQL bağlantısını sadece localhost olarak yapmak istiyorsak, spesifik port belirlemeden bu şekilde kullanabiliriz.
Docker MySQL Kullanımı
Root şifresi ve izinli host belirlemenizi sağlar. Parametre olarak % verdiğimiz için, inbound tüm bağlantılara izin verilecektir.
-e MYSQL_ROOT_PASSWORD=<ROOTPASS> -e MYSQL_ROOT_HOST=%
Son sürüm kurulur
-d mysql:latest
Kurulum sonrasında CLI ile aşağıda ki gibi bağlantı sağlanabilir, komut gönderilebilir.
docker exec -it MySQLSunucum mysql -u root -p
Oluşturma aşamasında -e parametresi ile belirtilen MYSQL_ROOT_PASSWORD girilerek mysql komut satırına bağlanabilirsiniz. Her şey normalse ve mysql> promptunu gördüyseniz, artık yeni bir veritabanı oluşturarak backup dosyamızı restore edebiliriz.
mysql> CREATE DATABASE Veritabanim; Query OK, 1 row affected (0.00 sec)
Veritabanı Yedekleme (Backup) ve Geri Dönme (Restore)
Ortamınız Windows ise işlemleri PowerShell ile yapmanız gerekmektedir.
Yedekleme:
docker exec -i MySQLSunucum mysqldump -u root --password=Şifrem -r | Set-Content yedek.sql
Geri Yükleme:
cat yedek.sql | docker exec -i MySQLSunucum mysql -u root --password=Şifrem VERİTABANIADI