LoginSignup
1
0

More than 3 years have passed since last update.

dbdeployerとは

ざっくりいうとMySQL Sandboxみたいなやつです。
気軽にDBサーバーを立てることが出来ます。

ちょうどschema管理周りの実験に使おうと
MySQL Sandboxのセッティングをしようとした時に発見しました。

ちなみにMySQL SandboxはPerl製のツールだったんですが、
dbdeployerはGoで出来てるみたいです。

dbdeployerでのセットアップ

今回は自分のローカルMacにインストールするので、
instalationの内容を少し書き換えて

VERSION=1.45.0
OS=osx
origin=https://github.com/datacharmer/dbdeployer/releases/download/v$VERSION
wget $origin/dbdeployer-$VERSION.$OS.tar.gz
tar -xzf dbdeployer-$VERSION.$OS.tar.gz
chmod +x dbdeployer-$VERSION.$OS
sudo mv dbdeployer-$VERSION.$OS /usr/local/bin/dbdeployer

これでコマンドは多々けるようになった。
次にtarball (tarで固めたファイルを指すらしい)を落としてくる作業が必要

まずはdry-run

$ dbdeployer downloads get-by-version 5.7 --newest --dry-run
Would download:

Name:          mysql-5.7.29-macos10.14-x86_64.tar.gz
Short version: 5.7
Version:       5.7.29
Flavor:        mysql
OS:            Darwin
URL:           https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29-macos10.14-x86_64.tar.gz
Checksum:      SHA512:bc275458b4185d0290b6faa7f50e3cb250ec4eef57607b51d41c72ef800eb9c1cd4eb49adc0a924a7c64acc742930f5b3d2838b0b899770a6645a4eab7a10f50
Size:          361 MB
Notes:         added with version 1.44.0

で、実行

$ dbdeployer downloads get-by-version 5.7 --newest
Downloading mysql-5.7.29-macos10.14-x86_64.tar.gz
.........105 MB.........210 MB.........315 MB....  361 MB
File /Users/hiraoka.yosuke/mysql-5.7.29-macos10.14-x86_64.tar.gz downloaded
Checksum matches

コマンド実行と同じディレクトリにファイルが設置される。
これでtarballは手に入れられた。

次にtarballをunpackする必要があるらしい。
ちなみにopt/mysqlという場所にunpackされたものが置かれるのでディレクトリは作っておく。

$ mkdir -p $HOME/opt/mysql
$ dbdeployer unpack mysql-5.7.29-macos10.14-x86_64.tar.gz
Unpacking tarball mysql-5.7.29-macos10.14-x86_64.tar.gz to $HOME/opt/mysql/5.7.29
.........100.........200.........300.......376
Renaming directory /Users/hiraoka.yosuke/opt/mysql/mysql-5.7.29-macos10.14-x86_64 to /Users/hiraoka.yosuke/opt/mysql/5.7.29

これで準備は出来たのでdeployしてみる

$ dbdeployer deploy single 5.7.29
Creating directory /Users/hiraoka.yosuke/sandboxes
Database installed in $HOME/sandboxes/msb_5_7_29
run 'dbdeployer usage single' for basic instructions'
... sandbox server started

確認してみると

$ dbdeployer sandboxes
 msb_5_7_29               :   single   5.7.29   [5729 ]

ということで行けたっぽい。

ちなみにDBサーバーの中に入ろうと思うと、
sandboxesディレクトリの中からuseというスクリプトを叩けばいける。

cd ~/sandboxes/msb_5_7_29
./use

でいけます。
構築自体は出来たっぽいので一旦はここまで。
databaseを作ったりtableを作ったりいじって遊ぶのは次回ということで!

参考

github
次世代MySQL Sandbox! dbdeployerの使用方法について
【備忘録】dbdeployerの設定

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0