Dockerを使ってMySQLのリストアの練習をした話


こんにちは、大曲です

今日はDockerを利用して、MySQLのリストアの練習をした話です

きっかけは、MySQLサーバの再起動が必要な手順があった際に
手戻り手順としてMySQLのリストアがありました

手戻り手順の時は、サービスが止まっているので手戻り手順の練習をしたいと考えました
そんな時にDockerを利用しての練習を考えました

やったこと
 ・ Dockerでmysql と XtraBackup のインストールと ssh が出来る環境を設定
 ・ バックアップファイルのあるフォルダをdocker run するときにマウント
 ・ リストアの練習をやる 


Dockerfile





docker run -v でマウント
docker run -d --name base -v /home/vagrant/tmp/:/home/oomatomo/tmp

-v [ ローカルのPATH] : [ Docker側のPATH ]

簡単にローカルのディレクトリをDocker側へマウントできます

動いているDockerに、ssh を行いリストアのコマンドを実行します

MySQLのリストアには innobackupexを利用しています



Dockerの本番導入はきついですが、Dockerは練習台としてかなり便利です
Chefの実行先やAnsibleの実行先としても活用しています