C 1
chengdu
xranzei 1
xranzei
zendor2 1
zendor2
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Almira2 1
Almira2
romegames 1
romegames
D 1
delimuratt
melankolıa18 1
melankolıa18
shrpnl 1
shrpnl
Fethi Polat 1
Fethi Polat
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

MySQL cant connect sock hatası

  • Konuyu başlatan Konuyu başlatan unicorn34
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 6
  • Görüntüleme Görüntüleme 858

unicorn34

Level 5
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
TM Üye
Katılım
23 Kas 2022
Konular
106
Mesajlar
801
Çözüm
3
Online süresi
26d 13h
Reaksiyon Skoru
260
Altın Konu
0
Başarım Puanı
121
Yaş
46
MmoLira
4,158
DevLira
33
Ticaret - 100%
2   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

MySQL cant connect sock hatası​

giriş​

"Yerel MySQL sunucusuna 'var/run/mysqld/mysqld.sock' (2) soketi aracılığıyla bağlanılamıyor" hata mesajıyla karşılaştığınızda, bu, MySQL veritabanı sunucunuza bağlanırken bir sorun olduğu anlamına gelir. Bu hata, mysqld.sock dosyasının yanlış yolu, MySQL kurulumunuzda yanlış yapılandırma veya dosya ve dizin izinleriyle ilgili sorunlar dahil olmak üzere çeşitli nedenlerle ortaya çıkabilir.

Nedeni ne olursa olsun, özellikle kritik iş operasyonları için veritabanınıza güveniyorsanız, bu hatayı mümkün olan en kısa sürede düzeltmeniz önemlidir. Bu hatayı görmezden gelirseniz veya yeterince hızlı düzeltmezseniz günlük faaliyetlerinizde önemli kesintilere yol açabilir.

Hata Mesajının Açıklaması​

"Yerel MySQL sunucusuna 'var/run/mysqld/mysqld.sock' (2) soketi aracılığıyla bağlanılamıyor" özel hata mesajı, soruna neyin sebep olduğu hakkında bazı ipuçları sağlar. Genel anlamda bu, bir şeyin bilgisayarınızın varsayılan Unix soketini (/var/run/mysqld/mysqld.sock ile temsil edilir) kullanarak MySQL sunucusuyla bağlantı kurmasını engellediği anlamına gelir.

"Soket" özellikle iki işlemin bir ağ üzerinden veya yerel olarak işlemler arası iletişim (IPC) aracılığıyla iletişim kurduğu bir uç noktayı ifade eder. Bu hata mesajının ortaya çıkması genellikle MySQL sunucusunun çalışmadığının veya bilgisayarınız ile sunucu arasındaki bağlantıda bir sorun olduğunun bir işaretidir.

Çoğu durumda sorun, MySQL sunucusunun çalışıp çalışmadığını kontrol ederek, mysqld.sock dosyasının belirtilen dizinde olduğundan emin olarak ve gerekirse hem sunucuyu hem de bilgisayarınızı yeniden başlatarak çözülebilir. Bu adımların başarısız olduğu daha ileri durumlarda, kurulumunuzda daha derin sorunları belirleyip düzeltmek için ek sorun giderme işlemleri gerekebilir.
 

Hata Mesajını Anlamak​

Soket nedir?​

Soket, iki farklı sürecin birbiriyle iletişim kurmasını sağlayan bir iletişim uç noktasıdır. MySQL bağlamında, mysqld.sock dosyası, MySQL sunucusu ile aynı makinede çalışan istemci uygulamaları arasında yerel bir iletişim uç noktası görevi görür.

"'var/run/mysqld/mysqld.sock' (2) soketi aracılığıyla yerel MySQL sunucusuna bağlanılamıyor" ne anlama geliyor?​

Bu hata mesajı, istemci uygulamasının, genellikle /var/run/mysqld/mysqld.sock konumunda bulunan UNIX soketi aracılığıyla MySQL sunucusuyla bağlantı kuramadığını gösterir. Başarılı bir şekilde bağlanmak yerine çıkış kodu 2 ile ilgili bir hatayla karşılaştı.

Hatanın yaygın nedenleri​

Bu hatanın ortaya çıkmasının birkaç olası nedeni vardır. Yaygın nedenlerden biri, MySQL sunucu işleminin çalışmaması veya beklenmedik bir şekilde durması, dolayısıyla istemci bağlantılarının kullanabileceği bir yuvanın bulunmamasıdır.

Diğer bir olasılık da mysqld.sock dosyasında veya ana dizininde izin sorunlarının olması ve istemcilerin bu dosyaya düzgün şekilde erişmesini engellemesidir. Diğer olası nedenler arasında MySQL veya istemci uygulamaları için yanlış yapılandırma ayarlarının yanı sıra ağ bağlantı sorunları yer alır.

Örneğin, uzak istemci makinesinden bağlanmaya çalışıyorsanız, güvenlik duvarları veya diğer ağ güvenlik önlemleri bağlantı girişimlerinizi engelliyor olabilir. Bu hata mesajını etkili bir şekilde teşhis etmek ve çözmek için tüm olası nedenleri kapsamlı bir şekilde araştırmak önemlidir.
 

Sorun Giderme Adımları​

MySQL sunucusunun çalışıp çalışmadığını kontrol edin​

"Yerel MySQL sunucusuna 'var/run/mysqld/mysqld.sock' (2) soketi aracılığıyla bağlanılamıyor" hatasını gidermenin ilk adımı, MySQL sunucusunun çalışıp çalışmadığını kontrol etmektir. Bu, aşağıdaki komutu bir terminal penceresinde çalıştırarak yapılabilir –

sudo systemctl status mysql

Çıktı, sunucunun etkin olmadığını veya çalışmadığını gösteriyorsa, bu komutu kullanarak sunucuyu başlatın –

sudo systemctl start mysql

Belirtilen dizinde mysqld.sock dosyasının olup olmadığını kontrol edin​

MySQL sunucusu çalışıyor ve çalışıyorsa, bir sonraki adım /var/run/mysqld/ dizininde mysqld.sock dosyasının bulunup bulunmadığını kontrol etmektir. Bunu yapmak için çalıştırın –

ls /var/run/mysqld/

Bu dizinde mysqld.sock dosyasını göremiyorsanız bu, MySQL'in başlatılmasıyla ilgili bir sorun olduğu anlamına gelir. MySQL'i durdurup yeniden başlatmanız gerekecek.

MySQL sunucusunu yeniden başlatın ve tekrar kontrol edin​

MySQL'i yeniden başlatmak için aşağıdaki komutları kullanın –

sudo systemctl stop mysql
sudo systemctl start mysql

O zaman koş

ls

mysqld.sock'un oluşturulup oluşturulmadığını görmek için /var/run/mysqld/ dizininde tekrar komut verin.

mysqld.sock dosyası ve dizini için izinleri kontrol edin​

Bir sonraki adım, hem /var/run/mysqld/ dizininin hem de mysqld.sock dosyasının uygun izinlere sahip olduğunu doğrulamaktır. /var/run/mysqld/ dizinindeki tüm dosyaların izinlerini kontrol etmek için bu komutu çalıştırın –

ls -la /var/run/mysqld/

Hem dizinler hem de dosyalar için izinler 755 olarak ayarlanmalı ve 'mysql' kullanıcısına ait olmalıdır. Bunlar izin ayarları değilse, değişiklik yapmak için aşağıdaki komutları çalıştırın –

sudo chmod 755 /var/run/mysqld/
sudo chown mysql:mysql /var/run/mysqld/
sudo chmod 755 /var/run/mysqld/mysqld.sock
sudo chown mysql:mysql /var/run/mysqld/mysqld.sock

mysqld.sock dosyasının doğru yolunu belirtmek için MySQL yapılandırma dosyasını düzenleyin​

Yukarıdaki adımların tümü işe yaramadıysa MySQL, mysqld.sock dosyasını farklı bir dizinde arıyor olabilir. Bu durumda MySQL yapılandırma dosyasını (my.cnf) değiştirmeniz gerekecektir. My.cnf dosyasını düzenlemek için favori metin düzenleyicinizi (vim, nano) kullanın ve bu satırı arayın –

socket = /tmp/mysql.sock

Bunu şu şekilde değiştirin:

socket = /var/run/mysqld/mysqld.sock

Bu değişikliği yaptıktan sonra dosyayı kaydedip çıkın.

Ardından MySQL sunucunuzu kullanarak yeniden başlatın.

sudo systemctl restart mysql

emretmek. Her şey beklendiği gibi çalıştıysa, artık yerel MySQL sunucunuza herhangi bir sorun olmadan bağlanabilmeniz gerekir.
 
Gelişmiş Sorun Giderme Teknikleri
3306 numaralı bağlantı noktasının açık olup olmadığını kontrol etmek ve bağlantıları dinlemek için netstat komutunu kullanma
Netstat komutu, MySQL sunucusuyla bağlantı sorunlarını gidermek için kullanışlı bir araçtır. Özellikle, varsayılan MySQL bağlantı noktasının (3306) açık olup olmadığını ve bağlantıları dinleyip dinlemediğini kontrol etmek için kullanılabilir.



Netstat komutunu kullanmak için bir terminal penceresi açın ve "netstat -an | grep 3306" yazın. Çıktı, 3306 numaralı bağlantı noktasında kurulan tüm bağlantıları veya kullanımda değilse bu bağlantı noktasının durumunu gösterecektir.
 
Netstat komutunu kullanmak için bir terminal penceresi açın ve "netstat -an | grep 3306" yazın. Çıktı, 3306 numaralı bağlantı noktasında kurulan tüm bağlantıları veya kullanımda değilse bu bağlantı noktasının durumunu gösterecektir.

Listelenen hiçbir giriş yoksa, bu, MySQL sunucusunun çalışmadığını veya bağlantı noktasında gelen trafiği engelleyen bir güvenlik duvarının olabileceğini gösterir. Netstat, bağlantı noktasının kullanımda olduğunu gösteriyorsa ancak yine de MySQL sunucusuna bağlanamıyorsanız, yanlış ağ yapılandırması veya uygunsuz izinler gibi başka sorunların olması mümkündür.
mysql sock Ekran Alıntısı.PNG
 
Son düzenleme:

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst