mysqlコマンドプロンプトでGRANT文をユーザーごとに発行することで、ユーザーごとにリモートアクセスが許可された。
リモートアクセスの許可に伴ってそのユーザーに与える権限も指定する必要がある。
<手順>
■まず、mysqlコマンドプロンプトを起動する
[root@localhost ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.0.77 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
■GRANT文を次のように発行して、指定したリモートユーザーを許可し、例えば全ての権限を与える場合の設定
mysql> GRANT ALL PRIVILEGES ON *.* TO root@'192.168.0.0/255.255.0.0' IDENTIFIED BY "ここに対象ユーザーのパスワードを入力";(コマンドの意味)
Query OK, 0 rows affected (0.00 sec)
mysql>
・ALL PRIVILEGES ON *.*
全てのデータベースとそのテーブルに対する、全ての権限を意味する
・root@'192.168.0.0/255.255.0.0'
指定したサブネットからアクセスするrootユーザーを意味する
これによって、直ちにリモートアクセスが可能になった。
言うまでもなく、ファイヤーウォールなどのpass設定は別に必要になってくる。
□また例えば、指定したリモートユーザーを許可し、「SELECT」操作だけを許可する場合の設定
mysql> GRANT SELECT ON *.* TO username@'192.168.0.0/255.255.0.0' IDENTIFIED BY "ここに対象ユーザーのパスワードを入力";
Query OK, 0 rows affected (0.00 sec)
(参照)
How can I setup a remote connection to MySQL?
< http://help.hardhathosting.com/question.php/87 > 2011/11/29