Yanıtlar:
Hayır, yok (sadece 1 saat önce kontrol ettim). Adres adresini my.cnf'de yorumlayabilirsiniz:
#skip-networking
#bind-address = 127.0.0.1
Yalnızca 2 IP istiyorsanız, bir güvenlik duvarı kullanmanız gerekir.
socket
ve bind-address
seçenekler.
127.0.0.x 'e bağlanması, tüm cihazlarda kullanılabilir olmasını sağlamaz, yalnızca yerel olarak kullanılabilir yapar. Eğer tüm arayüzler için uygun hale getirmek istiyorsanız, 0.0.0.0 kullanmanız gerekir. Birden fazladan, ancak tüm arabirimlerden daha azına erişmek istiyorsanız, 0.0.0.0'a bağlanmanız ve erişilmesini istemediğiniz arabirimlerin güvenlik duvarını kapatmanız gerekir.
Ayrıca, ikinci bir güvenlik katmanı olarak, tüm MySQL kullanıcılarınızın ana bilgisayar alanının% (başka bir ana bilgisayar) dışında bir şeye ayarlanmış olduğundan emin olmalısınız.
INADDR_ANY (0.0.0.0) means any address for binding;
mu?
/etc/mysql/conf.d/bindaddress.cnf
içeriği olan bir dosya oluşturun[mysqld] \n bind-address = 0.0.0.0
Birden fazla IP adresine bağlanamazsınız, bunun yerine mevcut tüm IP adreslerine bağlanabilirsiniz. Eğer öyleyse, sadece 0.0.0.0
MySQL yapılandırma dosyanızdaki (örneğin /etc/mysql/my.cnf) bir ciltleme adresi için kullanın :
bind-address = 0.0.0.0
Adres 0.0.0.0 ise, sunucu tüm sunucu ana bilgisayar IPv4 arayüzlerinde TCP / IP bağlantılarını kabul eder.
Ayrıca, adres ise ::
, sunucu tüm sunucu ana bilgisayarları IPv4 ve IPv6 arayüzlerinde TCP / IP bağlantılarını kabul eder. Tüm sunucu arayüzlerinde hem IPv4 hem de IPv6 bağlantılarına izin vermek için bu adresi kullanın.
Ya da basitçe bind-address=
tamamen yorum yapabilirsiniz , böylece tüm adreslere bağlanır. Ancak, skip-networking
uzak bağlantılara da izin vermek istiyorsanız, my.cnf’nizde etkin olmadığından emin olun (Daha fazla bilgi için: MySQL: Hem uzak hem de yerel bağlantılara izin verin ).
Bağlama adresini değiştirdikten sonra, MySQL sunucunuzu şu şekilde yeniden başlatmayı unutmayın:
sudo service mysql restart
Sonunda Master / Slave çoğaltmasıyla tek bir makinede (farklı portlar) birden fazla MySQL örneği çalıştırmayı düşünebilirsiniz. Çoğaltma, bir MySQL veritabanı sunucusundan (ana) gelen verilerin bir veya daha fazla MySQL veritabanı sunucusuna (ikincil) kopyalanmasını sağlar.
Daha fazla oku:
Diğerlerinin cevapladığı gibi, birden fazla arayüze seçici olarak bağlanmanın henüz bir yolu yoktur.
Linux, mümkün kılan bazı TCP araçlarına sahiptir. Bu kurulumda, mysql'yi 127.0.0.1'de dinleyecek şekilde yapılandırır ve sonra rasgele arayüzlerde göstermek için redir komutunu kullanırsınız.
Bunu sanal bir kutu konuğunun ana makinede kurulu mysql'yi görmesine yardımcı olmak için kullanıyorum.
redir --laddr=192.168.33.1 --lport=3306 --caddr=127.0.0.1 --cport=3306 &
Sorunuzun bu hatayla ilgili olduğunu düşünüyorum http://bugs.mysql.com/bug.php?id=14979 Hata raporu bazı geçici çözümler önerir.
MySQL 8.0.13'ten önce --bind-address, tek bir joker karakter olmayan IP adresi veya ana bilgisayar adı ya da birden çok ağ arabiriminde dinlemeye izin veren joker karakter adres biçimlerinden birini belirleyebilen tek bir adres değerini kabul eder (*, 0.0 .0.0 veya: :).
MySQL 8.0.13'ten itibaren, --bind-address, az önce açıklandığı gibi tek bir değeri veya virgülle ayrılmış değerler listesini kabul eder. Seçenek, birden çok değerin bir listesini adlandırdığında, her değer, joker olmayan bir IP adresi veya ana bilgisayar adı belirtmelidir; hiçbiri bir joker adres biçimi belirtemez (*, 0.0.0.0 veya: :).
Kaynak: https://dev.mysql.com/doc/refman/8.0/en/server-options.html
In my.cnf değişim (genellikle Linux üzerinde /etc/mysql/my.cnf veya pencereler için kontrol bu cevabı.
bind-address = 127.0.0.1
için
bind-address = 0.0.0.0
Daha sonra Windows'ta mysql'yi (Ubuntu servisinde mysql restart'da ), Win + R services.msc aracını kullanarak yeniden başlatın.
0.0.0.0, mevcut tüm IP'lere my.cnf dosyasında verilen bağlantı noktası ile bağlanmasını söyler.