MySQL

外部 MySQL クライアントから MySQL に接続する

まず、現状。

mysql> select user, host from mysql.user;
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
+---------------+-----------+
3 rows in set (0.00 sec)

ここで、外部から接続するためのユーザを追加します。

mysql> create user 'user1'@'%' identified by 'Abcdefg123!';
Query OK, 0 rows affected (0.00 sec)

user1 というユーザをどこからでも(%)アクセスできるように登録したことにあなります。

mysql> select user, host from mysql.user;
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| user1         | %         |
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
+---------------+-----------+
4 rows in set (0.00 sec)

追加されています。これで接続できるはずです。できない場合は、

http://yshystsj.com/?p=9

こちらでファイアウォールの設定も気にしてみてください。

ただ、­ファイアウォールの設定ができ接続できたとしても何もできません。なぜならユーザにデータベースを操作する権限を与えていないからです。

mysql> grant all on *.* to 'user1'@'%';
Query OK, 0 rows affected (0.00 sec)

­これで user1 がどこから(%)アクセスしてきても、すべてのデータベースのテーブル(*.*)に、すべての操作(all)ができるようになります。

-MySQL
-

© 2021 yshystsj.com Powered by AFFINGER5