##MySQL Workbenchの準備
MySQL WorkbenchとはGUIでDBの状態を確認したり、パッチを当てたりetcできるツール
下記からダウンロードします。
バージョンは最新のもので問題ありません。
https://dev.mysql.com/downloads/workbench/
使用されているOSを選択してダウンロード(インストールはすべてデフォルトで問題ありません。)
開くとこのような画面が出ると思います。
新しい接続を設定したい場合、中央あたりにある+ボタンを押します
##DBへの接続
接続のイメージはまず仮想環境に接続し、それを踏み台にDBにアクセスするイメージ?で自分は考えています。
下記コマンドで設定に必要な情報を表示させます。(仮想環境は立ち上がっている前提です。)
$ vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/hirok/Desktop/study/.vagrant/machines/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL
必ず設定値は同じ認識でいましたがWinとMacの両方で確認しましたがちょっと違う場合がありました。
ので一応確認、ちなみにvagrant up
した際に出てくる結果の中にもあるのでそこで確認しても問題ないです。
これをWorkbwnchのほうへ記載します。
設定補足
Connection Nameは適当に何か入れる(無いと設定できない)
Connection MethodはStandard TCP/IP over SSH
HostNameの 127.0.0.1の後ろにポート番号を入れます(:を忘れずに)
store in Vault...
と表示されているボタンは各環境にアクセスするパスワードを入力します。
SSHPasswordはデフォルトはvagrant
PasswordのほうはMYSQLで設定した(その2で)任意のパスワードになります。
SSH鍵で接続することももちろんできます。
下のほうにあるTest Connection
ボタンで接続確認ができます。
初期設定の場合はOKボタンがあるはずなので接続確認したらOKで完了です。
#Workbenchの操作
開くとこんな感じの画面が出ます。
任意のDB・テーブルをクリックしていきます。
※筆者はこの時点でテスト用のアプリをscaffoldで適当に作っています。
試しにusersテーブルが確認したい場合は右クリックしてSelect Rows - Limit 1000
を選択
デフォルトで3人テストユーザーを追加してあるのでそれが確認できます。
SQLに慣れている方であれば上にQueryが表示されているのがわかると思いますがここに任意のSQLを追記すれば思うように動かせます。
実行は左上の雷マークで実行します。
成功すればこんな感じ
カラムの値を直接いじることもできます
テスト 太郎 を変更 太郎に変更
Apply
ボタンを押すと
こんなアップデート投げるけど良いか??って聞かれるので確認してApply
めでたく完了すればDBの値が変わっています。
##最後に雑談
今回はほぼ最低限の立ち上げから設定のみですがいろいろ慣れてくると工夫できるようになります。
自分は共有フォルダは設定せず、WinSshFSとかWinsSCPというもので仮想環境上のファイルを触るので普段の運用では自分はVirtualBoxから直接起動をかけています(vagrant upだと遅いので)
Macにも似たようなツールがあります。
※共有フォルダの設定をしている場合はvagrantから仮想環境を立ち上げないと共有フォルダが参照されませんのでご注意を
WinSshFSを設定したい人はちょっと難しいのでこちらが参考になります(Windows限定)
↑最近動作がとても不安定で使用しているツールを変えました※2019/12/22追記
SSH接続はPuttyやTera Termというクライアントツールで接続して使っています
VM(仮想環境のことです)のシェルをzshに変更したりvimのプラグイン入れたりと仮想環境の設定はやりだすと楽しいですね
これはWindows限定の話ですがたまにWindows Updateかけた後勝手にネットワーク設定書き換えられてVMが立ち上がらなくなることがあります
そんな時にこの記事が参考になりました
結構Windowsは勝手に設定変わったりするので注意が必要です。
これを機に自分だけの理想の開発環境を作る第一歩を踏んでみてください^^