MySQL sunucu hatası 111'e bağlanılamıyor [kapalı]


152

Linux kutusu IP = 192.168.1.100 üzerinde mysql sunucusu kurdum ama bu IP'ye bağlanmaya çalıştığımda her zaman hata (111). ancak localhost kullanın ve 127.0.0.1 tamam.

beer @ beer-laptop # ifconfig | grep "inet adresi"
          inet adresi: 127.0.0.1 Maske: 255.0.0.0
          inet adresi: 192.168.1.100 Yayın: 192.168.1.255 Maske: 255.255.255.0

bira @ bira-laptop # mysql -ubeer -pbeer -h192.168.1.100
HATA 2003 (HY000): '192.168.1.100' adresindeki MySQL sunucusuna bağlanılamıyor (111)

bira @ bira-laptop # mysql -küp -paker -hlocalhost
MySQL monitörüne hoş geldiniz. Komutlar; veya \ g.
MySQL bağlantı kimliğiniz 160
Sunucu sürümü: 5.1.31-1ubuntu2 (Ubuntu)

'Help;' yazın; veya '\ h' yardım için. Arabelleği temizlemek için '\ c' yazın.

mysql> 

bira @ bira-laptop # mysql -pube -pbeer -h127.0.0.1
MySQL monitörüne hoş geldiniz. Komutlar; veya \ g.
MySQL bağlantı kimliğiniz 161
Sunucu sürümü: 5.1.31-1ubuntu2 (Ubuntu)

'Help;' yazın; veya '\ h' yardım için. Arabelleği temizlemek için '\ c' yazın.

mysql> 

Başka bir makineden bağlayın, ayrıca 111 hatası.

another @ another-dizüstü bilgisayar # mysql -ubeer -pbeer -h192.168.1.100
HATA 2003 (HY000): '192.168.1.100' adresindeki MySQL sunucusuna bağlanılamıyor (111)

Bu durumda localhost / 127.0.0.1 ve 192.168.1.100 kullanma arasındaki fark. Bu veritabanına başka bir makineden nasıl bağlanacağımı bilmiyorum.

Yardım lütfen. Teşekkür.

Yanıtlar:


263

Muhtemelen MySQL sunucunuzun sadece localhost arayüzünü dinlediği anlamına gelir.

Böyle hatlarınız varsa:

bind-address = 127.0.0.1

Senin içinde my.cnfyapılandırma dosyası , bunları yorum gerekir (satır başında bir # işareti koyun) ve yeniden başlatma MySQL.

sudo service mysql restart

Tabii ki, bunu yapmak için sunucunun yöneticisi olmalısınız.


6
Açıkçası, o skip-networkingçizgi yok ;-)
Michael Krelin - hacker

11
mysql my.cnf konumu nasıl
bilinir

2
ama mysql tezgahından ona bağlanabiliyorsanız ne olur? aynı problemim var.
George Pamfilis

3
Cevapta verilenleri takip ettim ama yine de işe yaramadı. Sonra "bind-address" parametresinin "/etc/mysql/mysql.conf.d/mysqld.cnf" dosyasında olduğunu anladım. Orada yorum yaptı ve işe yaradı!
Yahya

3
ubuntu> = 16.04'ün yeni sürümleri /etc/mysql/mysql.conf.d/myqld.cnf
dellasavia dilinde

38

111 bağlantı reddedildi anlamına gelir , bu da mysqld'inizin sadece localhostarayüzü dinlediği anlamına gelir .

Bunu değiştirmek için dosyanızın bölümündeki bind-addressdeğere bakmak isteyebilirsiniz .mysqldmy.cnf


Bağlantı noktası numarasının geçerli olup olmadığını da kontrol etmeye değer. Uyumsuzdur :3306ve :3307111 hatasına de neden olabilir.
NXT

2
@NXT, mysql'in farklı arabirimlerdeki farklı bağlantı noktalarını dinleyip dinleyemediğini bile bilmiyorum, ancak mümkün olsa bile çok olası bir senaryo (orijinal yazıdaki belirtiler göz önüne alındığında). Sonra güvenlik duvarı kuralları, vb. Olabilir. Bunu başarmanın birçok yolu vardır, ancak olasılık farklıdır…
Michael Krelin - hacker

Bu her zaman demek değildir. Benim my.cnfdosyalar hiç yok bind-addressya da skip-networkingçizgiler, ama sanki aynı hatayı alıyorum. Güvenlik duvarı da yüklenmedi. Fikirler bitti.
CoderGuy123

111, her zaman bağlantının reddedildiği anlamına gelir :) Ve sadece yerel ana bilgisayar, diğer kanıtlardan dolayı bu özel durumdadır. Vakanız hakkında daha fazla bilgi verirseniz size yardımcı olabilir miyim? Ayrıca, günümüzde sisteminize bağlı olarak, yapılandırmanın birden çok dosyaya dağılmış olması muhtemeldir.
Michael Krelin - hacker

10

Önceki tüm yanıtlar herhangi bir çözüm sağlamadıysa, kullanıcı ayrıcalıklarınızı kontrol etmelisiniz.

Eğer rootmysql olarak giriş yapabiliyorsanız bunu eklemelisiniz:

CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY  '***';
GRANT ALL PRIVILEGES ON * . * TO  'root'@'192.168.1.100' IDENTIFIED BY  '***' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

Ardından kullanarak tekrar bağlanmayı deneyin mysql -ubeer -pbeer -h192.168.1.100. İşe yaramalı.


17
kullanıcı ayrıcalıkları ile ilgili hata hata 111 verecek sanmıyorum.
ufk

1
Aslında işe yaradı ve ben de 111 hata alıyordum.
Borjante

127.0.0.1 satırını yorumlayarak mysql'yi tüm ağlara açmaktan daha iyi bir çözüm gibi görünüyor. en iyi çözüm olmalı.
nyxee

7

CPanel / WHM çalıştırıyorsanız, IP'nin güvenlik duvarında beyaz listeye eklenmiş olduğundan emin olun. Ayrıca bu IP'yi bağlanmaya çalıştığınız cPanel hesabındaki uzak SQL IP listesine eklemeniz gerekir.


1
Hataya neden olan bir güvenlik duvarı olup olmadığını görmek için iyi bir "söyle", hatanın döndürülmesi için biraz zaman alacağıdır. MySQL sorunlara neden oluyorsa, yanıtın hemen olması gerekir.
Grim ...

Bunun nasıl yapıldığını açıklayabilir misiniz?
Kullanıcı
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.