Vagrantで起動したCentOS上のMySQLにホストOSからログインする設定

公開日: : 最終更新日:2015/10/17 プログラム , ,

マシンを新しくしたこともあり、検証と称してソフトウェアをやみくもにインストールすることに抵抗が出てきた。
できるだけマシンはクリーンな状態を保ちたいので、VirtualBox + Vagrant の環境で検証する。

今回はその環境に MySQL をインストールしてホスト側からログインする方法を試してのでメモしておく。

icatch-2015-003-1

目次

1. ソフトウェアのバージョン

主なソフトウェアのバージョンは以下の通り。

【ホスト OS】

  • OS: OS X Yosemite 10.10.5
  • VirtualBox: 5.0.0
  • Vagrant: 1.7.4
  • Box ファイル:
    • http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130731.box

Box ファイルをダウンロードするには以下のコマンドを実行する。

$ vagrant box add centos6.4_64 http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130731.box

【ゲスト OS】

  • OS: CentOS 6.4(64ビット)
  • MySQL: 5.6.27

2. 前提

  • 上記の Box ファイルを使って VirtualBox 上に仮想環境(CentOS 6.4)が構築されていること
  • CentOS に MySQL がインストールされていること

3. Vagrant の設定(ホスト OS)

ゲスト OS の MySQL はデフォルトの 3306 ポートで動かす。
ホスト OS の 3306 ポートアクセスをゲスト OS に流すように設定する。

以下は Vagrantfile の内容(コメントアウトしている行は省略)。

Vagrant.configure(2) do |config|
  config.vm.box = "centos6.4_64"
  config.vm.network "forwarded_port", guest: 3306, host: 3306
end

4. iptable の設定(ゲスト OS)

MySQL はデフォルトの 3306 ポートで動かす。
ホスト OS から 3306 ポートでアクセスできるように iptable に設定を追加する。

以下を /etc/sysconfig/iptables に追加する。

-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

追加したらデーモンを再起動して設定を有効にする。

$ sudo /etc/init.d/iptables restart

5. MySQL の設定(ゲスト OS)

ホスト OS から root ユーザで MySQL へアクセスする。
専用のユーザを作成して行うのが適切なのだが、検証なので root でアクセスする。

MySQL に root でログイン後、以下の SQL を実行する(”{PASSWORD}” の部分は置き換えること)。
‘%’ なので、どこからのアクセスでも許してしまう。

mysql> GRANT ALL PRIVILEGES on *.* to root@'%' IDENTIFIED BY '{PASSWORD}' WITH GRANT OPTION;

上記の設定を確認するには以下の SQL を実行してみる。

mysql> select user, host from mysql.user;
+------+-----------------------+
| user | host                  |
+------+-----------------------+
| root | %                     |
| root | 127.0.0.1             |
| root | ::1                   |
| root | localhost             |
| root | localhost.localdomain |
+------+-----------------------+
5 rows in set (0.01 sec)

6. MySQL へのログイン(ホスト OS)

ターミナルで以下を実行してゲスト OS で起動している MySQL にログインできることを確認する。

$ mysql -h 127.0.0.1 -u root -p

7. 更新履歴

  • 2015/10/12: 初版作成
  • 2015/10/17: 文言を修正

Googleアドセンス用(PC)

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

関連記事

icatch_8617990318-resized

yum が参照するミラーサイトの baseurl を変更して日本国内のものに設定する

yum が参照するリポジトリのミラーサイトは変更することができます。 このミラーサイトを日本国内のも

記事を読む

no image

IE9 のキャッシュ対策

どのようなバグだったのか POST で送信した内容を確認する画面で、最新の内容が表示されないという

記事を読む

icatch-medium_4301351732-resized

mp3splt を実行して “undefined symbol: mp3splt_u_check_if_directory” と出力されたときの対処法

mp3 ファイルを分割してくれる mp3splt というライブラリがあります。 mp3 ファイルを

記事を読む

no image

より安全にパスワードを保存するために考えること

知ってる人にとっては当たり前のことだろうが、あまり深く考えたことがなかったので調べてみた。 前提

記事を読む

icatch-2015-004-1

Vagrantで起動したCentOS上のOctopressをホストOSから確認する設定

タイトルの通りだが、Vagrant を使って起動した CentOS に Octopress をインス

記事を読む

icatch-jersey_multi_pathparams

Jerseyの@PathParamはスラッシュの間に複数指定できる

http://hoge-api/user/{id}.{format} のような URL も以下のよう

記事を読む

icatch_4365495446-resized

CentOS6.5にGitをソースコードからインストールする

CentOS 6.5 の64ビット版を "Minimal" でインストールした環境で、git sta

記事を読む

no image

CVS でタグ間で変更があったファイルを抽出するスクリプト

今どきバージョン管理ツールに CVS を使っているところは珍しいと思うし、あまり需要はないだろうけど

記事を読む

icatch-thumbup_3507728739_mini-thumbnail

Sublime Text3 に SublimeLinter-jshint をインストールしてみた

エディタに Eclipse を使って Java のプログラムを書くことが多いんですが、JavaScr

記事を読む

icatch-9214710040_822a4c3456_z-resized

ロードアベレージを監視するシェルスクリプトを作成してみた

このブログを運用している Linux サーバの負荷が高い状態になってました。 何か被害にあったとかで

記事を読む

Googleアドセンス用(PC)

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


× 6 = 二十 四

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Googleアドセンス用(PC)

icatch-jersey_multi_pathparams
Jerseyの@PathParamはスラッシュの間に複数指定できる

http://hoge-api/user/{id}.{format}

icatch-vagrant_box_customize
VagrantのBoxファイルをカスタマイズして独自のBoxファイルを作成する

配布されている Vagrant の Box ファイルを使って検証環境を

icatch-2015-006-1
バリデーションチェックにJava8のOptionalを使ってスマートに書く(自分比)

Web アプリのバリデーションチェックにアノテーションを使うことが増え

icatch-2015-005-1
ユニットテストの偏りを防ぐ命名規則の付け方

ユニットテスト名に以下の命名規則を付けるようにして二ヶ月ぐらい経った。

icatch-2015-004-1
Vagrantで起動したCentOS上のOctopressをホストOSから確認する設定

タイトルの通りだが、Vagrant を使って起動した CentOS に

→もっと見る

PAGE TOP ↑