Az önce mysql (percona 5.5) ile yeni bir ubuntu sunucusu kurdum, ancak uzak ana bilgisayarlardan bağlantıları kabul etmeyi reddediyor
Bu sunucuya uzaktan bağlanmaya çalışırsam ne olur:
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 uzak bağlantıları dinleyip dinlemediğini kontrol ettiğimde şunu gördüm:
sudo netstat -ntlup | grep mysql
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 127018/mysqld
Gördüğünüz gibi 127.0.0.1:3306
"Sadece yerel bağlantıları kabul ediyorum" anlamına geliyor.
Ben skip_networking
ve bind-address
değişkenleri kontrol ettim - her şey kapalı:
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)
Kesinlikle aynı yapılandırmaya sahip başka bir sunucum var ve harika çalışıyor:
sudo netstat -ntlup | grep mysql
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2431/mysqld
Bunun nedeni ne olabilir? MySQL'in uzak bağlantılara nasıl yanıt vermesini sağlayabilirim?
bind_address
yalnızca 5.6 sürümünden beri kullanılabildiğini unutmayın ( bugs.mysql.com/bug.php?id=44355 ), bu nedenle ayarlanmış olsa bile v5.5'te boş bir küme döndürür.