2 min read

Netlify ve MySQL ile Hosting Deneyimim: IP Değişikliği ve Veritabanı Bağlantısı

Netlify ve MySQL ile Hosting Deneyimim: IP Değişikliği ve Veritabanı Bağlantısı

Eğer siz de benim gibi hosting alma, websitesini burada depolama, veritabanlarını burada muhafaza etme gibi konularda yeniyseniz, bazı konular sizi de olduğundan fazla uğraştırabilir. Yarım gün süren uğraş sonucunda yeni bir şey öğrenmenin ve bunu sizinle paylaşmanın heyecanını taşıyorum. Kısaca konumuza gelecek olursak, şöyle bir senaryo başıma geldi:

Geçenlerde bir hosting hizmeti kiraladım ve bunun yanında MySQL veritabanı hizmeti de gelmiş oldu. Ben de bundan istifade ederek birkaç veritabanımı burada muhafaza etme kararı aldım. Next.js kullanarak bir proje geliştiriyordum ve bu websitesini Netlify üzerinde yayınlacaktım. Aynı zamanda da mysql2 paketini kullanarak Next.js’in sunucu tarafında veritabanı işlemlerini yönetecek ve bu veritabanı ve tabloları da turkticaret.net üzerinden aldığım hostingimde saklayacaktım. Locale’de çalışırken her şey çok iyiydi. Çünkü cPanel üzerinden Remote MySQL ile kendi IP’mi eklemiştim ve kendi kullanıcıma tüm izinleri verdiğim için rahatlıkla tüm işlemlerimi gerçekleştirebiliyordum. Fakat tüm o serüven projeyi Netlify’a yüklediğimde başladı. Şimdi sorabilirsiniz, zaten hostingin var neden hala Netlify kullanıyorsun diye. Çünkü Netlify’ın Next.js için hiçbir ek işlem yapmadan direkt olarak çalıştırabilmesi kolayıma geliyor. Bu yüzden de hostingimde tekrar Next.js kurulumu yapmakla uğraşmamak için Netlify kullanıyorum. Ama bir gün sunucuma Next.js kurulumu yaparsam, bunu burada paylaşmayı çok isterim.

Dönelim konumuza, Netlify AWS üzerinden sunucular üzerinde tutuyor bizim websitelerimizi. Bu yüzden olacaktır ki websitemizin IP adresi sürekli değişiyor. Bazen sayfa yenilediğinizde IP aynı kalsa da genellikle IP adresimiz sürekli olarak değişiyor. Bu da veritabanına bağlanmada bize sorun yaratıyor. İşin çıldırtıcı tarafı tüm bu sorunun çözümü gözümün önünde olmasına rağmen buna dikkat etmeyip çözümü internette saatlerce aramam oldu. Tek çözüm bir % işareti koymakmış. Netlify’ın daha doğrusu AWS’nin bize sunduğu IP adreslerine dikkatlice baktığımızda %.us-east-2.compute.amazonaws.com şeklinde oluyor. Burada % işareti sürekli değişen alanı ifade ediyor. Netlify üzerinden MySQL veritabanına bağlanmak için de bu baş kısma % işareti koymak yetiyor. Bu işaret SQL’deki LIKE işlemine benzer bir anlam sunuyor. Başı herhangi bir şey olan ve geri kalanı us-east-2.compute.amazonaws.com şeklinde olan tüm IP adreslerine izin ver gibi bir anlam ifade ediyor. Bu da zaten cPanel üzerinde Remote MySQL alanında IP ekleme inputunun tam üstünde yazıyor. Çok basit ama beni çok uğraştıran bir işlem olduğu için bu yazıyı paylaşmak istedim. Umarım benim gibi dikkatsiz arkadaşlarıma yardımcı olmuştur. 😊

Benim kadar dikkatsiz olmamanız dileğiyle. 🤞

Bir sonraki yazıda görüşmek üzere. 📝👋