AWS EC2(Windows Server 2012 R2)上にあるMySQL(Redmine)に、外部からODBC接続するための設定を紹介します。
クラウドですから、設定次第で何処からでも接続できます。データベース活用の幅が広がりますね。
MYSQLポート(3306)の開放と、外部からの接続許可、及び外部接続用アカウントの作成が必要です。
MySQLポートの開放
EC2インスタンスとWindowsサーバーの両方で、ポート(3306)の開放が必要です。
EC2インスタンスにMYSQL/Auroraを追加
AWSの管理コンソールから、EC2インスタンスのセキュリティグループのインバウンドに、「MYSQL/Aurora」を追加します。
サーバーに新しいインバウンドルールを作成
Windowsサーバーにリモートデスクトップで接続して、TCPでポート(3306)を開放します。具体的には、RedmineへのHTTP接続を許可したポート(80)の開放手順を、参考にしてください。
MySQLで外部からの接続を許可
引き続き、Windowsサーバーにリモートデスクトップ接続した状態で作業します。
my.ini(MySQLの設定ファイル)にある「bind-address=127.0.0.1」をコメントアウトします。
ファイルを保存したら、Bitnami Redmine Stackのサービス一式を再起動しておきます。
外部からの接続用アカウントを作成
引き続き、Windowsサーバーにリモートデスクトップ接続した状態で作業します。
Bitnami Redmine Stackのコマンドプロンプトを起動して、MySQLに、外部から接続するためのアカウントを作成します。各データベースへの「Select」のみを許可しました。
自宅PCからの接続確認
AccessなどからODBCドライバーを起動して、接続確認します。
「TCP/IP Server」には、パブリックDNS又はパブリックIPを入力します。「User/Password」には、さきほど作成した外部から接続するためのアカウントを入力します。入力が終わったら[Test]ボタンをクリックします。
次のような画面が表示されれば接続テストはOKです。
実際にローカルのAccess上に、リンクテーブルを作成してみました。
まとめ
EC2のセキュリティグループに必要なルールを追加して、MySQLのポートを開放する以外は、通常、オンプレミスのサーバーでも必要な作業です。
自宅PCからでも、簡単にMySQL(Redmine)にODBC接続できます。
コメント