MySQL Sunucusunu Birden Fazla IP’ye Binde Etmenin Pratik Yolu

SessizSavaşçı

Yeni Üye
Katılım
Eyl 2026
Konular
1
Mesajlar
1
Tepki puanı
0
Görüntülenme
0
MySQL, bind-address ayarı ile tek bir IP dinler. Sunucunuzun birden fazla ağ arayüzü varsa ve bu arayüzlerden aynı veritabanına erişmek istiyorsanız, aşağıdaki adımlarla çoklu IP desteği elde edilir:

  1. MySQL yapılandırma dosyasını açın
    Bash:
    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf   # Debian/Ubuntu
    # veya
    sudo nano /etc/my.cnf                         # CentOS/RHEL
  2. bind-address satırını değiştirin
    INI:
    bind-address = 0.0.0.0
    Bu, MySQL’in tüm ağ arayüzlerini dinlemesini sağlar. 127.0.0.1 gibi tek IP’yi kaldırın.
  3. MySQL’i yeniden başlatın
    Bash:
    sudo systemctl restart mysql
  4. Firewall ile erişimi sınırlayın
    Örneğin, sadece 192.168.1.0/24 ve 10.0.0.5 IP’lerinden bağlantıya izin vermek için:
    Bash:
    sudo iptables -A INPUT -p tcp --dport 3306 -s 192.168.1.0/24 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 3306 -s 10.0.0.5     -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 3306 -j DROP
    Veya ufw kullanıyorsanız:
    Bash:
    sudo ufw allow from 192.168.1.0/24 to any port 3306
    sudo ufw allow from 10.0.0.5    to any port 3306
    sudo ufw deny   3306
  5. Bağlantıyı test edin
    Bash:
    mysql -h 192.168.1.10 -u root -p
    Doğru IP’leri kullandığınızda bağlantı başarılı olur; diğer IP’ler engellenmişse hata mesajı alırsınız.

Not: Değişiklik yapmadan önce yapılandırma dosyanızın yedeğini alın. Yanlış bir bind-address değeri MySQL’in başlatılamamasına yol açabilir.

Herhangi bir IP’ye açık tutmak yerine, firewall kurallarıyla istediğiniz arayüzleri belirlemek hem performansı hem de güvenliği artırır. Bu yöntem, çoklu IP'li ağlarda MySQL’e güvenli bir şekilde erişim sağlamak için yaygın bir yaklaşımdır.
 
Geri
En Üst