LoginSignup
6
5

More than 5 years have passed since last update.

Vagrant内のデータベースにGUIでアクセスするには

Posted at

Vagrant環境で開発中のシステムについて、DBの中身を確認したいことがあります。もちろん、VagrantをPublic(Bridge)ネットワークに設定しておけば、通常のサーバのように外部のアプリケーションからアクセス可能です。ただ、MacBookなどで使う場合、en0: Wi-Fi (AirPort)をブリッジ先に設定していると思いますが、出先ではWiFiに繋がっていない限り、このNICを使うことはできず非常に不便です。

Navicat for MySQL.png

Vagrantは共有の秘密鍵を使っている

$ vagrant sshだけで簡単に仮想マシンに入れるのは、Vagrantの便利な点です。残念ながら、GUIアプリケーションから、この恩恵を得ることは出来ませんので、手動で繋ぐ必要があります。デフォルトであれば次が接続情報です。

  • 接続先: localhost
  • ポート番号: 2222
  • 秘密鍵: ~/.vagrant/insecure_private_key
  • パスフレーズ: なし

Vagrantは上記コマンドで簡単にログインできるよう、Vagrant Boxの作成者に共通の秘密鍵を使うように推奨しています。同じものが、~/.vagrant/内に配置されているはずです。

※ローカルのVagrant Box以外でこの鍵を使うのは危険です。VagrantをLANからアクセスできるようにする場合も、別の鍵にした方が良いでしょう。念のため。

SSHでVagrant内にトンネルする

それでは、実際にアプリケーションからアクセスしてみましょう。ここでは、Navicat for MySQLを使って説明します。Navicat Essentialsでも同様のことが可能なはずです。

まず、Vagrant内でデータベースにアクセスするための設定を、Generalタブで。ポートを変更している場合は、それを指定します。

  • User Name: 設定したユーザ名 or root
  • Password: 設定したパスワード

Connection Properties - General

Navicatは単体でSSHトンネルの機能を持っているので、Terminalから別途コマンドを叩いておく必要はありません。続けて、SSHタブで前述の接続情報を入力します。Private Keyにはパスを直接キーボードから入力しましょう。パスフレーズは空欄のままでOKです。

Connection Properties - SSH

設定できたら、Test Connectionを実行して確認します。うまく接続できると、冒頭の画面のようにDBの一覧が表示されます。

6
5
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
6
5