HeidiSQL のSSHトンネル(ポートフォワード)を使って、vccw の MySQL へ接続する方法を紹介します
Windowsを使っている人限定となりますが、HeidiSQL から MySQLデータベースの操作ができるようになるので、データベース処理の確認やデバッグが格段に便利になります
準備
Vagrant や vccw って何と言う方は、先に下記記事を参考に環境を用意して下さい
Vagrant 仮想マシン入門 Getting Started をやってみる
Vagrant vccw 仮想マシン起動に悪戦苦闘!!
plink
vccw 環境を構築していれば、既に vagrant ssh というコマンドで、仮想マシンにターミナルからアクセスしていると思いますが、HeidiSQL でSSHポートフォワードを使うには plink.exe というプログラムが必要となります
plink.exe と言うのは、puTTY というオープンソースのターミナルエミュレータに含まれているコマンドラインプログラムでSSHポートフォワード接続機能をサポートしてるようです
puTTY
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
日本語版も有志の方によって配布されているようです
http://hp.vector.co.jp/authors/VA024651/PuTTYkj.html
今回は、この日本語版のZipファイルをダウンロードして任意のフォルダーに解凍して使用します
これで準備完了です
vccw のMySQLデータベースへ接続
SSHトンネル(ポートフォワード)とは、ローカルの特定ポートへの送信をリモートサーバーの特定ポートへ転送できるというルーターのようなポート変換機能です
HeidiSQLで、この機能を使ってデータベースへ接続すると、まるでローカル環境のデータベースを操作しているような感覚で仮想マシンのデータベースを操作することが出来るようになります
※接続の方法は、デフォルトの設定のまま使用していることを前提に紹介します
接続情報
vccw の MySQL データベースへのデフォルトの接続情報
// ** MySQL settings ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'wordpress');
/** MySQL hostname */
define('DB_HOST', 'localhost');
この情報を使って wordpress データベースへ接続してみます
HeidiSQLに接続用セッション作成
HeidiSQLを起動してセッションを追加します

データベース情報設定
ネットワーク種別を MySQL (SSH tunnel) に設定して、MySQLデータベース接続情報のホスト名、ユーザー名、パスワードを設定します

| ホスト名/IP | 127.0.0.1 |
| ユーザー名 | wordpress |
| パスワード | wordpress |
| ポート | 3306 |
SSHトンネル設定
plink.exe プログラムのパス情報とSSHの接続情報を設定します

| SSHホスト | 127.0.0.1 |
| SSHポート | 2222 |
| ユーザー名 | vagrant |
| パスワード | vagrant |
| ローカルポート | 3307 |
接続
設定が済んだら、開くをクリックして接続します

はい で継続すると、あっさり接続しました
HeidiSQLを使って仮想マシン内の MySQL データベースへ簡単にアクセスすることが出来るようになりました (^^)

注意
HeidiSQL を使うと簡単に様々な処理を行うことが出来てしまうので間違えてデータを削除してしまう等、 WordPress に重大な影響を与える可能性があります
SQL って何? と言う方は少し勉強してから扱うことをお勧めします
私も得意と言うわけではありませんが、HeidiSQL がないとデータベースを触ろうと言う気も起きないぐらいのお気に入りです
関連する記事もいくつか書いていますので、参考にどうぞ
- HeidiSQLでMySQLデータベースへ接続してみる
- WordPressに新規テーブル作成 – HeidiSQLでデータベースらくらく開発
- MySQLテーブル結合 – HeidiSQLでデータベースらくらく開発
- MySQLインデックス設定方法 – HeidiSQLでデータベースらくらく開発
- MySQLテーブルデータのエクスポート/インポート
- HeidiSQLでエックスサーバーのMySQLにSSHポートフォワード接続
ちなみに以前エックスサーバーのMySQLへ HeidiSQL から接続する方法も紹介していますので興味ある方は合わせて参照して下さい
HeidiSQLでエックスサーバーのMySQLにSSHポートフォワード接続
では