MacPortで入れたMySQLにIP(TCP/IP)接続する
MacPortでインストールしたMySQLはデフォルト設定では、
TCP/IPによる接続ができないセキュリティー設定がされています。
同一ホストでアクセスする場合にはソケット接続で事足りますが、
普段利用している端末からアクセスしてデータベース操作するような場合には、
やはりTCP/IPによる接続ができないと不便な場合もあります。
そんな時にはTCP/IP接続を有効にするといいでしょう。
概要
MacPortで入れたMySQLにIP(TCP/IP)接続する
この設定に関してはM.A.M.P.環境を構築したサーバー以外から、
MySQLサーバーへのアクセスの必要がない場合には、
無理にTCP/IPからのアクセスを許可する設定をする必要はありません。
例えば、サーバー上でWordPressを導入して、
WordPressを介して記事の執筆などを行うような場合です。
直接データベースに別端末からMySQLWorkbench等で接続し、
SQLの発行やデータの投入、バックアップ操作などを行う場合には、
TCP/IPの接続が必要になりますが、
そうした場合でも多くの場合は直接サーバーにログインして操作できるなら、
サーバーの端末で作業をする方がセキュリティー上はメリットとなります。
「macports-default.cnf」の読み込みを解除
MacPortでインストールしたMySQLは以下でご紹介している通り、
デフォルトで「3306」ポートのLISTENはしていません。
そこで、インストール後に作成されている「my.cnf」の、
「!include /opt/local/etc/mysql55/macports-default.cnf」をコメントアウトします。
変更前: !include /opt/local/etc/mysql55/macports-default.cnf
変更後: #!include /opt/local/etc/mysql55/macports-default.cnf
このことによって、TCP/IPの制限が解除され、
通常のMySQLサーバーと同様に利用することができるようになります。
変更後は「*:3306」にてLISTENするようになります。
さて、これでサーバーに設定されている、
全IPアドレス(localhost,127.0.0.1,192.168.1.xxx等)の3306ポートから、
MySQLサーバへアクセスできるような下準備が整いました。
ホスト外IPアドレスからのユーザーアクセス権の付与
MySQLではアクセス権の付与が、
「ユーザー名@ホスト(IP)」で付与する形になっています。
アクセス元のIPアドレスを直接指定するか、
ワイルドカード「%」を利用したIPアドレス範囲によって、
アクセス権を追加しておく必要があります。
ここでは、ユーザーの追加と実行権限の付与をMySQL Workbencにて行っています。
上記の設定を完了すれば、TCP/IPを利用した
別ホストからのアクセスができるようになります。
なお、サーバーと同一ホストからアクセスする場合には、
ユーザー権限の追加を「mysql@127.0.0.1」や「mysql@localhost」で行うと、
TCP/IP接続によってアクセスができるようになりますが、
この為にTCP/IP接続を設定するよりも、
ローカルアクセスのみに限定されているソケット接続を利用する方が、
よりセキュリティー上のメリットが大きいと考えます。
別ホストからTCP/IP接続の確認
設定を完了したら、別のホスト(パソコン)から、
実際にアクセスを行って接続の確認を行います。
上記の手順では「192.168.0.%」としてホストを指定した事によって、
「192.168.0.1~192.168.0.254」のIPアドレスの範囲から、
mysqlユーザーでログインができるように設定しました。
ここでは「192.168.0.3」のIPを持つWindows8.1上にインストールした
MySQLWorkbench5.2からアクセスして確認します。
初期の接続設定はrootアカウントのみが有効でした。
接続するユーザーを追加した「mysql」へ変更します。
接続設定を開き、ユーザー名を「mysql」に変更し接続をテストします。
「Test Connection」をクリックすると、
Connected to …と接続ができたメッセージが表示されれば問題ありません。
Workbenchから接続設定をダブルクリックすると、
接続されSQL実行画面が表示されます。
このようにして、MacPortでも設定を適切に変更することで、
TCP/IPからの接続が行えるようになります。
当サイト内のコンテンツおよび画像を含むすべてにおいて、管理人アルゴリズンが著作権を保持しております。
当サイトでご紹介しております写真等につきましては著作権の放棄はしませんが、
ライセンスフリーでご利用いただいて構いません。
コンテンツを有益であると感じていただけましたら非常に光栄です。
ありがとうございます。
サイト内コンテンツを引用される際には、出典元として当サイト(個別記事)へのリンクをお願いいたします。
申し訳ございませんが、無断転載、複製をお断りさせて頂いております。
公開日: