mysql(percona 5.5)を使用して新しいUbuntuサーバーをインストールしましたが、リモートホストからの接続の受け入れを拒否しています
このサーバーにリモートで接続しようとすると、次のようになります。
mysql -h10.0.0.2 -uroot -pmypassowrd
ERROR 2003 (HY000): Can't connect to MySQL server on '10.0.0.2' (111)
telnet 10.0.0.2 3306
Trying 10.0.0.2...
telnet: Unable to connect to remote host: Connection refused
mysqlがリモート接続をリッスンするかどうかを確認したところ、次のようになりました。
sudo netstat -ntlup | grep mysql
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      127018/mysqld 
ご覧のとおり127.0.0.1:3306、「ローカル接続のみを受け入れる」という意味です。
私skip_networkingとbind-address変数を確認しました-すべてオフになっています:
mysql> show variables like '%skip_networking%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| skip_networking | OFF   |
+-----------------+-------+
1 row in set (0.00 sec)
mysql> show variables like '%bind%';
Empty set (0.00 sec)
私はまったく同じ設定の別のサーバーを持っていて、それはうまくいきます:
sudo netstat -ntlup | grep mysql
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      2431/mysqld 
これの理由は何ですか?mysqlをリモート接続に応答させるにはどうすればよいですか?
bind_addressはバージョン5.6(bugs.mysql.com/bug.php?id=44355)以降でのみ使用できるため、設定されていても、v5.5では空のセットを返します。