Bir MySQL istemcisi (örn. mysql
) Kullanırken, bir Unix soket dosyası veya TCP / IP kullanarak sunucuya bağlı olup olmadığını nasıl belirleyebilirim?
Bir MySQL istemcisi (örn. mysql
) Kullanırken, bir Unix soket dosyası veya TCP / IP kullanarak sunucuya bağlı olup olmadığını nasıl belirleyebilirim?
Yanıtlar:
Kullanmayı deneyin netstat -ln | grep 'mysql'
ve çıkış tarafından nasıl bağlandığını görebilirsiniz. mermiye erişiminiz varsa
Unix'te MySQL programları, ana bilgisayar adını localhost'a özel olarak, diğer ağ tabanlı programlara kıyasla beklediğinizden farklı bir şekilde davranır. Localhost'a bağlantılar için, MySQL programları bir Unix soket dosyası kullanarak yerel sunucuya bağlanmaya çalışır.
Bir bağlantı noktası numarası belirtmek için bir --port
veya -P
seçenek belirtilse bile bu gerçekleşir .
Bağlantı türünü mysql CLI içinden bilmek istiyorsanız , '\ s' (durum) komutunu kullanın.
mysql> \s
Çıktıda aşağıdakilerden birine benzer bir çizgi olacaktır (Unix'te).
Connection: 127.0.0.1 via TCP/IP
veya
Connection: Localhost via UNIX socket
İstemcinin yerel sunucuya TCP / IP bağlantısı yapmasını sağlamak için , 127.0.0.1 ana bilgisayar adı değerini veya yerel sunucunun IP adresini veya adını belirtmek için --host
veya öğesini -h
kullanın. --protocol=TCP
Seçeneği kullanarak bağlantı protokolünü localhost için bile açıkça belirtebilirsiniz . Örneğin:
shell> mysql --host=127.0.0.1
shell> mysql --protocol=TCP
--protocol={TCP|SOCKET|PIPE|MEMORY}
Seçeneği açıkça sunucuya bağlanmak için kullanmak üzere bir protokol belirler. Diğer bağlantı parametrelerinin normalde istediğiniz protokol dışında bir protokol kullanılmasına neden olması yararlı olur. Örneğin, Unix ile localhost arasındaki bağlantılar varsayılan olarak bir Unix soket dosyası kullanılarak yapılır:
shell> mysql --host=localhost
Bunun yerine TCP / IP bağlantısını kullanılmaya zorlamak için bir --protocol
seçenek belirtin :
shell> mysql --host=localhost --protocol=TCP
Unix soket dosya bağlantısı TCP / IP'den daha hızlıdır, ancak yalnızca aynı bilgisayardaki bir sunucuya bağlanırken kullanılabilir.