Conectarea MySQL cu NodeJS

Connecting Mysql With Nodejs



Serverul MySQL este un server de baze de date foarte popular și este acceptat de limbaje de programare utilizate în cea mai mare parte, cum ar fi PHP, Python, Perl, Java, C # etc. Este o aplicație open-source, astfel încât oricine poate descărca această aplicație pentru stocare, recuperare , actualizarea și ștergerea datelor utilizând interogări de baze de date. Veți avea nevoie ca pachetele client și server să fie instalate în sistemul dvs. pentru a efectua diferite tipuri de operațiuni ale bazei de date în serverul bazei de date. Serverul MySQL devine acum popular și pentru dezvoltatorii Node. Dezvoltatorii de noduri încep să utilizeze serverul MySQL cu MongoDB pentru unele caracteristici speciale ale serverului MySQL. Cum puteți face o conexiune cu serverul MySQL folosind clientul node-mysql este prezentat în acest tutorial.

Condiție preliminară:

Înainte de a începe acest tutorial, trebuie să confirmați că pachetele client și server MySQL sunt instalate și funcționează corect în sistemul dvs. Dacă instalați serverul MySQL pentru prima dată, atunci parola utilizatorului root este goală în mod implicit. Dar trebuie să setați parola pentru utilizatorul root pentru a face o conexiune cu serverul MySQL folosind nod-mysql client. Puteți verifica acest lucru tutorial pentru a ști cum să schimbați parola de root a serverului MySQL.







Rulați următoarele comenzi pentru a funcționa ca utilizator root și conectați-vă cu serverul MySQL utilizând clientul MySQL.



$sudo -i
$ mysql-urădăcină-p

Introduceți parola de root și executați următoarele comenzi SQL pentru a crea o nouă bază de date, creați un tabel pe baza de date respectivă și inserați câteva înregistrări în acel tabel.



Următoarea comandă va crea o bază de date numită mydb .





CREA BAZĂ DE DATE mydb;

Următoarea comandă pentru a selecta baza de date pentru efectuarea operațiunilor bazei de date.

utilizare mydb;

Următoarea comandă va crea un tabel numit carte în baza de date mydb.



CREA MASA carte(
id INT (6) NESEMNAT AUTO_INCREMENT CHEIA PRINCIPALA ,
titlu VARCHAR (cincizeci) NU NUL ,
autor VARCHAR (cincizeci) NU NUL ,
Preț int (5));

Următoarea comandă va introduce patru înregistrări în carte masa.

INTRODUCE ÎN carte valori
( NUL ,„Învățarea PHP și MySQL”, „Robin Nixon”, Patru cinci),
( NUL ,„Învățarea JQuery”, „Jonathan”, 35),
( NUL ,„Unghiular în acțiune”, „Jeremy”, cincizeci),
( NUL ,„Stăpânirea Laravel”, „Christopher”, 55);

Instalați clientul MySQL pentru nodejs:

Rulați următoarea comandă pentru a verifica nodejs este instalat în sistem înainte de a rula comanda de instalare a clientului mysql al nodejs. Va afișa versiunea instalată a nodejs.

$nodul-v

Dacă nu este instalat, trebuie să îl instalați executând următoarea comandă.

$sudo apt-get installnodejs

Veți avea nevoie de un alt pachet numit deasupra nivelului mării să fie instalat în sistem pentru a instala clientul mysql pentru nodejs. Dacă nu este instalat înainte de a rula următoarea comandă pentru instalare deasupra nivelului mării .

$sudo apt-get installdeasupra nivelului mării

Acum, rulați următoarea comandă pentru a actualiza sistemul.

$sudo apt-get update

Se va instala următoarea comandă mysql modul pentru nodejs care va funcționa ca client mysql.

$deasupra nivelului măriiinstalaremysql

Conexiune MySQL simplă folosind NodeJS:

Creați un fișier JS numit connection1.js cu următorul script pentru a face o conexiune cu baza de date creată anterior numită mydb și citiți date din carte masa. mysql modulul este importat și utilizat pentru crearea unei conexiuni simple cu serverul MySQL. Apoi, va fi executată o interogare pentru a citi toate înregistrările din carte tabel, dacă baza de date este conectată corect. Dacă interogarea a fost executată corect, atunci toate înregistrările din carte tabelul va fi tipărit în terminal și conexiunea la baza de date va fi închisă.

connection1.js

// Importați modulul mysql
lasa mysql=solicita(„mysql”);

// Configurare parametru conexiune bază de date
lasa conexiunea=mysql.createConnection({
gazdă: 'gazdă locală',
utilizator: 'rădăcină',
parola: „1234”,
Bază de date: „mydb”
});

// Conectați-vă cu baza de date
conexiune.conectați(funcţie(Și) {
dacă (Și) {

// Afișați mesajul de eroare la eșec
întoarcereconsolă.eroare('eroare:' +Și.mesaj);
}

// Afișați mesajul de succes dacă este conectat
consolă.Buturuga(' nConectat la serverul MySQL ... n');
});

// Setați mesajul de interogare
$ interogare= „SELECT * din carte”;

// Executați interogarea bazei de date
conexiune.interogare($ interogare, funcţie(Și,rânduri) {
dacă(Și){

// Afișați mesajul de eroare
consolă.Buturuga(„A apărut o eroare la executarea interogării.”);
întoarcere;
}
/ * Afișați datele formatate preluate din tabelul „carte”
folosind bucla * /

consolă.Buturuga(„Înregistrările tabelului de carte: n');
consolă.Buturuga('Titlu t t t tAutor t tPreț n');
pentru(lăsați rând de rânduri) {
consolă.Buturuga(rând['titlu'],' t t',rând['autor'],' t',„$”,rând['Preț']);
}
});

// Închideți conexiunea la baza de date
conexiune.Sfârșit(funcţie(){
consolă.Buturuga(' nConexiunea este închisă. n');
});

Ieșire:

Rulați următoarea comandă pentru a executa scriptul.

$conexiune nod1.js

Următoarea ieșire va apărea după rularea scriptului.

Conexiune MySQL comună utilizând NodeJS:

Realizarea unei conexiuni simple MySQL cu NodeJS folosind mysql modulul este prezentat în exemplul anterior. Dar mulți utilizatori se pot conecta odată cu serverul bazei de date prin intermediul aplicației când aplicația este creată MySQL bază de date în scopuri de producție. Veți avea nevoie de expres modul pentru a gestiona utilizatorii de baze de date concurente și pentru a susține conexiuni multiple la baze de date.

Rulați următoarea comandă pentru a instala fișierul expres modul.

$deasupra nivelului măriiinstalareexpres

Creați un fișier JS numit connection2.js cu următorul script. Dacă vă conectați cu MySQL cu următorul script, atunci 10 utilizatori simultani vor putea să facă o conexiune cu serverul de baze de date și să preia date din tabel pe baza interogării. Va face o conexiune la portul 5000.

connection2.js

// Importați modulul mysql
Undemysql=solicita(„mysql”);

// Importați modulul expres
Undeexpres=solicita('expres');

// Definiți obiectul modulului expres
Undeaplicație=expres();

// Faceți conexiunea la baza de date pentru a gestiona 10 utilizatori simultani
Undebazin=mysql.createPool({
connectionLimit:10,
gazdă: 'gazdă locală',
utilizator: 'rădăcină',
parola: „1234”,
Bază de date: „mydb”,
depanare: Adevărat
});

/ * Faceți o conexiune combinată cu o bază de date și citiți înregistrări specifice dintr-un tabel al acesteia
Bază de date */

funcţiehandle_database(cerere,raspuns) {

// Faceți conexiune
bazin.getConnection(funcţie(Și,conexiune){
dacă (Și) {

// Trimiteți un mesaj de eroare pentru conexiunea nereușită și terminați
raspuns.json({'cod' : 300, 'stare' : „Eroare conexiune bază de date”});
întoarcere;
}

// Afișați mesajul de succes în terminal
consolă.Buturuga(„Baza de date conectată”);

// Citiți înregistrări particulare din tabelul cărților
conexiune.interogare(„SELECT * din carte unde titlul„% PHP% ”sau titlul
'% Laravel%' '
,funcţie(Și,rânduri){conexiune.eliberare();
dacă(!Și) {

// Returnează setul de rezultate al interogării dacă este executat cu succes
raspuns.json(rânduri);
}
});

// Verificați dacă apare sau nu eroarea de conectare
conexiune.pe('eroare', funcţie(Și) {
raspuns.json({'cod' : 300, 'stare' : „Eroare conexiune bază de date”});
întoarcere;
});
});
}

// Apelați funcția pentru realizarea conexiunilor
aplicație.obține(„/”,funcţie(cerere,raspuns){-
handle_database(cerere,raspuns);
});

// Ascultați solicitarea de conectare la portul 5000
aplicație.asculta(5000);

Ieșire:

Rulați scriptul de la terminal ca în exemplul anterior. Acesta va aștepta solicitarea de conectare după executarea scriptului.

$conexiune nod2.js

Acum, deschideți orice browser și accesați următoarea adresă URL pentru a trimite o cerere de conectare.

http: // localhost: 5000

Următoarea ieșire va apărea ca răspuns după executarea interogării.

Dacă deschideți terminalul acum, veți vedea următoarea ieșire.

Zece cereri de conectare pot fi trimise simultan din 10 browsere în modul menționat mai sus.

Concluzie:

Cele mai simple moduri de a lucra cu MySQL și NodeJS sunt prezentate prin două exemple din acest tutorial. Dacă sunteți un dezvoltator Node nou și doriți să lucrați cu baza de date MySQL, sper că veți putea să vă îndepliniți sarcina după ce ați citit acest tutorial.