44

mysql -h <remote-ip> -u any_existing_users -pコマンドラインまたは phpmyadmin などの他の mysql クライアントを使用してリモートの MySQL サーバーに接続しようとしたとき、それは機能せず、エラーのヒントは

ERROR 2003 (HY000) Can't connect to MySQL server on '<remote-ip>' (61)

しかし、ssh <remote-ip>MySQL を ローカルで接続してみたところmysql -u root -p問題ありませんでした。

ユーザー テーブルの一部を次に示します( SELECT User, Host FROM mysql.user;)。

+------------------+----------------+
| User             | Host           |
+------------------+----------------+
| root             | %              |
| other_users      | <remote-ip>    |
| root             | localhost      |
+------------------+----------------+

ここにiptableがあります:

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (2 references)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255 
3    ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0           
5    ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353 
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631 
8    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
10   REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 
11   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:3306 

だから問題は何ですか?

4

8 に答える 8

79

mysql サーバーが netstat を使用してソケットでリッスンしているかどうかを確認します。

netstat -tulpen

3306 を検索します。

そうでない場合、または localhost のみの場合は、my.cnf を確認してbind-address行を検索し、次のように変更します。

bind-address = 0.0.0.0

その後、サーバーを再起動して再試行してください。

于 2013-04-23T06:07:55.903 に答える
28

MySql 5.7彼らはファイルを変更したので、bind-address現在は次のとおりです。

/etc/mysql/mysql.conf.d/mysqld.cnf

それ以外の:

/etc/mysql/my.cnf
于 2016-10-09T14:35:02.017 に答える
18

MAMP を実行する場合は、アクセスを許可することを忘れないでください (mySQL パネルで、[MySQL へのネットワーク アクセスを許可する] をオンにします)。

于 2014-04-12T16:35:36.477 に答える
13

サーバーにCentos 7をインストールした直後にこの問題が発生しました。リモート コンピューターの Mysql Workbench からアクセスできませんでした。

問題はファイアウォールの構成にありました。最終的に、次のことを行うと解決策が得られました。

sudo firewall-cmd --zone=public --permanent --add-service=mysql

次に、ファイアウォールを再起動します。

sudo systemctl restart firewalld
于 2015-10-25T17:30:44.400 に答える
1

ファイアウォールに関連する問題である可能性があります。または、次のことを試してください。

Server Admin -> MySQL -> Settings -> check: Allow Network Connections に移動します

次にMySQLを再起動します

于 2013-04-23T05:55:12.753 に答える
1

MySQL の「アクセス拒否エラーの原因」をご覧ください。

http://dev.mysql.com/doc/refman/5.1/en/access-denied.html

サーバーの設定に失敗したか、他のプログラムが同じポートを使用している可能性がありますか? または、サーバーは「127.0.0.1」にバインドされていますか? my.cnf ファイルを変更してみてください。

于 2013-04-23T06:02:51.350 に答える