NodeJS MySql Bağlantı Yapma

Merhabalar, NodeJS derslerimize devam edelim. Bu dersimizde NodeJS ile localde çalışan bi server yapacak ve gerekli router yani yönlendiricileri ayarlayacağız. Hadi başlayalım !
Henüz NodeJS kurmadıysanız Linux için buraya, Windows için buraya, MacOS için buraya tıklayabilirsiniz. Evet artık NodeJS kurduğunuzu varsayarak devam ediyorum. Dersimize başlayabiliriz. Ilk olarak bi tane NodeJS projesi oluşturuyoruz. Bunun için de istediğimiz bi yerde bi klasör oluşturup içerisine yine istediğimiz bi isimde javascript dosyası oluşturalım. Örneğin ben index.js adında bi dosya oluşturdum. Bu javascript dosyası kodlarımızı yazacağımız dosya olacak. Şimdi terminali (Windows için cmd) açıp oluşturduğumuz klasör içine giriyoruz. Bunun için ya klasörü açıp Linux’ta sağ tıklayıp Terminali aç m diyerek ve Windows’ta yine klasörü açıp üstteki adres barına cmd yazarak bulunduğumuz klasörde terminal açabiliriz. Veyahut terminali açıp Linux ve MacOS için örneğin cd /home/kullanici/Masaüstü/proje, Windows için ise cd c:/users/kullanici/desktop/proje komutuyla klasöre girebiliriz. Ardından içinde bulunduğumuz klasör yani projeyi NodeJS projesine çevirmemiz gerek. Bunun için ise terminalden
npm init
komutunu giriyoruz. Npm (NodeJS Package Manager), adından da anlaşılacağı üzere NodeJS projelerini ve projemiz için gerekli olan bağımlılıkları yönetmemizi sağlayan bi yöneticidir. Komutu girdikten sonra proje adı, proje çalıştırma dosyası gibi bilgileri doldurup projemizi hazır hale getiriyoruz. Veya npm’nin otomatik olarak bilgileri tanıması için npm init yerine
npm init --yes
komutunu girebiliriz. Evet NodeJS projesi oluşturduk şimdide MySql işlemleri için kullanacağımız paketi kuralım. Bunun için terminalden
npm install mysql
komutunu girmemiz yeterli. Bu komut mysql paketini indirip node_modules klasörü içine kopyalayacak ve kullanıma hazır hale getirecektir. Evet tüm ön hazırlıklar tamam, artık kod yazmaya başlayabiliriz. Oluşturduğumuz javascript dosyasını metin editörü ile açıp kodlarımızı yazalım. Ilk olarak kurduğumuz mysql paketini sayfamızda çağıralım. NodeJS’de paket çağırmak için require() fonksiyonunu kullanıyoruz. Yani;
const mysql = require('mysql');
MySql bağlantısı yapmak için kullanılacak nesne için mysql paketi içinde bulunan createConnection() metodu kullanılıyor. Bu metod parametre olarak host adresi, sunucu kullanıcı adı, sunucu şifresi ve veritabanı adının bulunduğu bir obje alıyor ve localhost’ta bulunan deneme isimli veritabanına bağlanmak için örnek kullanımı şu şekilde;
const baglanti = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'deneme'
});
Bağlantıyı açmak yani bağlantı yapmak için ise connect() fonksiyonu kullanılıyor ve bu metod herhangi bi hata olması durumunda hata bilgilerini saklayan bi callback fonksiyonu geri döndürüyor. Yani bağlantı esnasında bi sorun olursa bu callback fonksiyonu ile yakalayabiliyoruz. Bu callback fonksiyonunun örnek kullanımı ise;
baglanti.connect(function(err)
{
if(err)
console.log('Veritabanına bağlanırken bir sorun oluştu');
else
console.log('Veritabanina başarıyla bağlanıldı');
});
Elbette callback fonksiyonu kullanmadan da
baglanti.connect();
şeklinde bağlanmakta mümkün. Bağlantıyı yaptık, peki bağlantıyı nasıl kapatacağız ? İşte şöyle;
baglanti.end();
Aslında mysql modülü her işlemin sonunda bağlantıyı kapatıyor ama daha iyi bi kod yazımı için elle kapatmak daha faydalı olabilir. Tüm bağlantı işlemlerimizi yaptık şimdi sıra geldi projeyi çalıştırmaya, bunun için terminalden
node index.js
komutunu girelim, bu komuttaki index.js başlangıçta oluşturduğumuz Javascript dosyasının adıdır, siz kendi oluşturduğunuz dosya adına göre komutu düzenlersiniz. Yazdığımız tüm kodu daha okunabilir olması için aşağıya bırakıyorum;
const mysql = require('mysql');
let baglanti = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'deneme'
});
baglanti.connect(function(err)
{
if(err)
console.log('Veritabanına bağlanırken bir sorun oluştu');
else
console.log('Veritabanina başarıyla bağlanıldı');
});
Bu dersimizde bu kadardı, tüm NodeJS derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.