MySQL sunucusuna uzak makineden erişilemiyor


14

MySQL sunucusunu yerel Ubuntu sunucuma kurdum (11.10). Uzak bir makineden sunucuya bağlanamıyorum.

Denediğimde: - nmap localhost , Aşağıdakileri gösterir

LİMAN DEVLET HİZMETİ
22 / tcp açık ssh
80 / tcp açık http
139 / TCP Açık Netbios-SSN
445 / TCP Açık Microsoft-DS
631 / tcp açık ipp
3306 / TCP Açık MySQL

Bu 3306, MySQL portunun açık olduğu anlamına gelir , değil mi? Ama denediğimde nmap 192.168.0.50, hangi sunucu IP, ben aşağıdakileri elde: -

LİMAN DEVLET HİZMETİ
22 / tcp açık ssh
80 / tcp açık http
139 / TCP Açık Netbios-SSN
445 / TCP Açık Microsoft-DS

Bu, IP kullanarak erişirken portun açık olmadığı anlamına mı geliyor? Varsa, bağlantı noktasını nasıl açabilirim?

Aşağıdaki kodu denemişti, ama işe yaramadı gibi görünüyor.

sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

Burada yanlış olan ne?

Yanıtlar:


22

MySQL hizmetiniz yalnızca localhost sunmak zorundadır (arayüz bağlaması). Güvenlik nedeniyle bu varsayılan değerdir. Gerçekten diğer ana bilgisayarlardan doğrudan erişmeniz gerekiyorsa , takip edebileceğiniz Ubuntu'da MySQL'e uzaktan erişim nasıl etkinleştirilir :

  1. root olarak, sizin açmak /etc/mysql/my.cnfveya /etc/mysql/mysql.conf.d/mysqld.cnf farklı sistemlerde olduğu gibi, en sevdiğiniz editörü ile bulunursa farklı olmak.
  2. [mysqld]bölümü ve orada bind-addressanahtar kelimeyi arayın . Bu genellikle 127.0.0.1- normal "IP adresinizle eşleşecek şekilde ayarlanır
  3. dosyayı kaydedin ve hizmeti yeniden yükleyin (örn. kullanarak service mysql restart)

Uzak kullanıcılarınızın uygun GRANT'ları ayarlayarak veritabanlarına uzaktan erişmelerine izin vermeniz gerektiğini unutmayın.

GRANT ALL ON mydb.* TO remoteuser@'%' IDENTIFIED BY 'SomePASSWORD';

Not @'%'"herhangi bir ana bilgisayardan" hangi araçları.


Okuduğuma sevindim - ve hoş geldiniz!
Izzy

bağlantı koptu :(
dino

2
@dino Artık yok. Bunu düzelttim ve bir alıntı da ekledim, bu yüzden tekrar ölürse gerekli adımlar hala burada. Benim kötüm bunu başından beri yapmadım - ama zaman damgasından da görebileceğiniz gibi, bu benim ilk cevaplarımdan biriydi. Hepimiz öğreniyoruz :)
Izzy

2
Bağlama adresi alanı /etc/mysql/mysql.conf.d/mysqld.cnfsistemim için altındaydı .
Eric G

@EricG İşaretçi için teşekkürler. Cevabım 5 yıl önceydi, bu yüzden yapılandırmalar biraz değişti (ve muhtemelen daha modüler hale geldi).
Izzy
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.