webサーバー1とwebサーバー2からマスタDBサーバーに外部接続できるようにする
マスタDBの現在のMySQLユーザーはこうなってます。
mysql> SELECT user, host FROM mysql.user ORDER BY user, host;
+-----------+-----------+
| user | host |
+-----------+-----------+
| root | localhost |
+-----------+-----------+
2 rows in set (0.00 sec)
外部接続するmaster_dataというdatabaseを作成しておきます。
mysql> create database master_data;
・webサーバー1からアクセスできるMySQLユーザーを追加します。
master_dataというデータベース全体にselect、insert、update、deleteができる権限をweb1ユーザーに与えます。
mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON master_data.* TO 'web1'@'webサーバー1のIPアドレス' IDENTIFIED BY 'パスワード';
・ユーザー追加を反映する。
mysql> flush privileges;
・ユーザーが追加されたことを確認する
mysql> SELECT user, host FROM mysql.user ORDER BY user, host;
・権限が付与されているかも確認する
mysql> show grants for 'web1'@'webサーバー1のIPアドレス';
・マスタDBサーバーの3306ポートを開けます。
vi /etc/sysconfig/iptablesで
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPTを追加。
他のサーバーの設定時と同様にiptablesをインストールし起動します。
・webサーバー1でmysqlコマンドを使用するためmysqlもインストールしておきます。
・webサーバー1からマスタDBサーバーのDBにアクセスできるか確認します。
mysql -u web1 --password="パスワード" -h マスタDBのIPアドレス master_data
これでマスタDBのMySQLに入れれば成功です。
webサーバー2も同じことを行います。