MySQL'i NodeJS ile Bağlama

Connecting Mysql With Nodejs



MySQL sunucusu çok popüler bir veritabanı sunucusudur ve PHP, Python, Perl, Java, C# vb. gibi en çok kullanılan programlama dilleri tarafından desteklenir. Açık kaynaklı bir uygulamadır, bu nedenle herkes bu uygulamayı depolamak, almak için indirebilir. , veritabanı sorgularını kullanarak verileri güncelleme ve silme. Veritabanı sunucusunda farklı türde veritabanı işlemlerini gerçekleştirmek için sunucu ve istemci paketlerinin sisteminize yüklenmesini isteyeceksiniz. MySQL sunucusu artık Düğüm geliştiricileri için de popüler hale geliyor. Düğüm geliştiricileri, MySQL sunucusunun bazı özel özellikleri için MySQL sunucusunu MongoDB ile kullanmaya başlar. Bu eğitimde node-mysql istemcisini kullanarak MySQL sunucusuyla nasıl bağlantı kurabileceğiniz gösterilmektedir.

Ön koşul:

Bu eğitime başlamadan önce MySQL sunucu ve istemci paketlerinin kurulu olduğunu ve sisteminizde düzgün çalıştığını onaylamanız gerekir. MySQL sunucusunu ilk kez kurarsanız, root kullanıcısının parolası varsayılan olarak boştur. Ancak, MySQL sunucusu ile bağlantı kurmak için root kullanıcısının şifresini ayarlamanız gerekir. düğüm-mysql müşteri. Bunu kontrol edebilirsiniz öğretici MySQL sunucusunun kök şifresinin nasıl değiştirileceğini bilmek.







Kök kullanıcı olarak çalışmak ve MySQL istemcisini kullanarak MySQL sunucusuna bağlanmak için aşağıdaki komutları çalıştırın.



$sudo -ben
$ mysql-ukök-P

Yeni bir veritabanı oluşturmak için root şifresini girin ve aşağıdaki SQL komutlarını çalıştırın, o veritabanı üzerinde bir tablo oluşturun ve bu tabloya bazı kayıtları ekleyin.



Aşağıdaki komut adında bir veritabanı oluşturacaktır. mydb .





OLUŞTURMAK VERİ TABANI mydb;

Veritabanı işlemlerini yapmak için veritabanını seçmek için aşağıdaki komut.

kullanmak mydb;

Aşağıdaki komut adında bir tablo oluşturacaktır. kitap veritabanında mydb.



OLUŞTURMAK TABLO kitap(
İD INT (6) İMZASIZ OTOMATİK ARTIŞ BİRİNCİL ANAHTAR ,
Başlık VARCHAR (elli) OLUMSUZ BOŞ ,
yazar VARCHAR (elli) OLUMSUZ BOŞ ,
fiyat int (5));

Aşağıdaki komut, içine dört kayıt ekleyecektir. kitap tablo.

SOKMAK İÇİNE kitap değerler
( BOŞ ,'PHP ve MySQL Öğrenmek', 'Robin Nixon', Dört beş),
( BOŞ ,'JQuery'yi Öğrenmek', 'Jonathan', 35),
( BOŞ ,'Açısal Eylemde', 'Jeremy', elli),
( BOŞ ,'Laravel'de Ustalaşmak', 'Christopher', 55);

nodejs için mysql istemcisini kurun:

Kontrol etmek için aşağıdaki komutu çalıştırın düğümler nodejs'nin mysql istemcisini kurma komutunu çalıştırmadan önce sisteme kurulur. Nodejs'nin kurulu sürümünü gösterecektir.

$düğüm-v

Kurulu değilse, aşağıdaki komutu çalıştırarak yüklemeniz gerekir.

$sudo apt-get installdüğümler

adlı başka bir pakete ihtiyacınız olacak Deniz seviyesinden yukarıda nodejs için mysql istemcisini kurmak için sisteme kurulacak. Daha önce kurulu değilse, yüklemek için aşağıdaki komutu çalıştırın. Deniz seviyesinden yukarıda .

$sudo apt-get installDeniz seviyesinden yukarıda

Şimdi, sistemi güncellemek için aşağıdaki komutu çalıştırın.

$sudo apt-get güncellemesi

Aşağıdaki komut yüklenecek mysql mysql istemcisi olarak çalışacak düğümler için modül.

$Deniz seviyesinden yukarıdaYüklemekmysql

NodeJS kullanarak basit MySQL bağlantısı:

adlı bir JS dosyası oluşturun bağlantı1.js adlı önceden oluşturulmuş veritabanı ile bağlantı kurmak için aşağıdaki komut dosyası ile mydb ve verileri oku kitap tablo. mysql modül içe aktarılır ve MySQL sunucusuyla basit bir bağlantı oluşturmak için kullanılır. Ardından, tüm kayıtları okumak için bir sorgu yürütülecektir. kitap tablo, veritabanı düzgün bağlanmışsa. Sorgu düzgün bir şekilde yürütülürse, tüm kayıtları kitap tablo terminalde yazdırılacak ve veritabanı bağlantısı kapatılacaktır.

bağlantı1.js

// mysql modülünü içe aktar
izin ver mysql=gerekmek('mysql');

// Veritabanı bağlantı parametresini ayarla
bağlantıya izin ver=mysql.oluşturBağlantı({
ev sahibi: 'yerel ana bilgisayar',
kullanıcı: 'kök',
parola: '1234',
veri tabanı: 'mdb'
});

// Veritabanına bağlan
bağlantı.bağlamak(işlev(Ve) {
Eğer (Ve) {

// Başarısızlık durumunda hata mesajını göster
dönüşkonsol.hata('hata: ' +Ve.İleti);
}

// Bağlıysa başarı mesajını göster
konsol.kayıt(' MySQL sunucusuna bağlandı... ');
});

// Sorgu mesajını ayarla
$sorgu= 'Kitaptan * SEÇ';

// Veritabanı sorgusunu çalıştır
bağlantı.sorgu($sorgu, işlev(Ve,satırlar) {
Eğer(Ve){

// Hata mesajını göster
konsol.kayıt('Sorgu yürütülürken hata oluştu.');
dönüş;
}
/* 'Kitap' tablosundan alınan biçimlendirilmiş verileri göster
for döngüsü */

konsol.kayıt('Kitap masasının kayıtları: ');
konsol.kayıt('BaşlıkTTTTYazarTTfiyat ');
için(satır satır izin ver) {
konsol.kayıt(sıra['Başlık'],'TT',sıra['yazar'],'T','$',sıra['fiyat']);
}
});

// Veritabanı bağlantısını kapat
bağlantı.son(işlev(){
konsol.kayıt(' Bağlantı kapandı. ');
});

Çıktı:

Komut dosyasını yürütmek için aşağıdaki komutu çalıştırın.

$düğüm bağlantısı1.js

Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir.

NodeJS kullanarak havuzlanmış MySQL bağlantısı:

kullanarak NodeJS ile basit bir MySQL bağlantısı kurma mysql modül önceki örnekte gösterilmiştir. Ancak birçok kullanıcı, uygulama ile oluşturulduğunda, uygulama aracılığıyla bir seferde veritabanı sunucusuna bağlanabilir. MySQL üretim amaçlı veri tabanı. ihtiyacınız olacak ifade etmek eşzamanlı veritabanı kullanıcılarını işlemek ve birden çok veritabanı bağlantısını desteklemek için modül.

yüklemek için aşağıdaki komutu çalıştırın ifade etmek modül.

$Deniz seviyesinden yukarıdaYüklemekifade etmek

adlı bir JS dosyası oluşturun bağlantı2.js aşağıdaki komut dosyası ile. MySQL ile aşağıdaki komut dosyası ile bağlanırsanız, 10 eşzamanlı kullanıcı veritabanı sunucusuyla bağlantı kurabilir ve sorguya göre tablodan veri alabilir. 5000 portunda bağlantı yapacaktır.

bağlantı2.js

// mysql modülünü içe aktar
neredemysql=gerekmek('mysql');

// ekspres modülü içe aktar
neredeifade etmek=gerekmek('ifade etmek');

// ekspres modülün nesnesini tanımlayın
neredeuygulama=ifade etmek();

// 10 eşzamanlı kullanıcıyı işlemek için veritabanı bağlantısı kurun
neredehavuz=mysql.oluşturHavuz({
bağlantıLimit:10,
ev sahibi: 'yerel ana bilgisayar',
kullanıcı: 'kök',
parola: '1234',
veri tabanı: 'mdb',
hata ayıklama: NS
});

/* Bir veritabanı ile havuzlanmış bağlantı kurun ve bunun bir tablosundan belirli kayıtları okuyun
veri tabanı */

işlevhandle_database(rica etmek,cevap) {

// Bağlantı kurun
havuz.getConnection(işlev(Ve,bağlantı){
Eğer (Ve) {

//Başarısız bağlantı için hata mesajı gönder ve sonlandır
cevap.json({'kod' : 300, 'durum' : 'Veritabanı bağlantı hatası'});
dönüş;
}

// Terminalde başarı mesajını göster
konsol.kayıt('Veritabanı bağlandı');

// Kitap tablosundan belirli kayıtları oku
bağlantı.sorgu('%PHP%' gibi bir başlığın veya benzer bir başlığın olduğu kitaptan 'SEÇ *
'%Laravel%''
,işlev(Ve,satırlar){bağlantı.serbest bırakmak();
Eğer(!Ve) {

// Sorgu başarıyla yürütüldüyse sonuç kümesini döndür
cevap.json(satırlar);
}
});

// Bağlantı hatasının oluşup oluşmadığını kontrol edin
bağlantı.üzerinde('hata', işlev(Ve) {
cevap.json({'kod' : 300, 'durum' : 'Veritabanı bağlantı hatası'});
dönüş;
});
});
}

// Bağlantı kurmak için fonksiyonu çağırın
uygulama.elde etmek('/',işlev(rica etmek,cevap){-
handle_database(rica etmek,cevap);
});

// 5000 numaralı bağlantı noktasındaki bağlantı isteğini dinle
uygulama.dinlemek(5000);

Çıktı:

Komut dosyasını önceki örnekte olduğu gibi terminalden çalıştırın. Komut dosyasını çalıştırdıktan sonra bağlantı isteğini bekleyecektir.

$düğüm bağlantısı2.js

Şimdi herhangi bir tarayıcıyı açın ve bir bağlantı isteği göndermek için aşağıdaki URL'ye gidin.

http://localhost:5000

Aşağıdaki çıktı, sorguyu yürüttükten sonra bir yanıt olarak görünecektir.

Şimdi terminali açarsanız aşağıdaki çıktıyı göreceksiniz.

Yukarıda belirtilen şekilde 10 tarayıcıdan aynı anda on bağlantı isteği gönderilebilir.

Çözüm:

MySQL ve NodeJS ile çalışmanın en basit yolları bu eğitimde iki örnekle gösterilmiştir. Yeni bir Düğüm geliştiricisiyseniz ve MySQL veritabanı ile çalışmak istiyorsanız, umarım bu öğreticiyi okuduktan sonra görevinizi yapabilirsiniz.