Dauguma realaus pasaulio taikomųjų programų saugo duomenis duomenų bazėse. Taigi svarbu žinoti, kaip prijungti programą prie duomenų bazės ir gauti iš jos duomenis.

MySQL yra puikus pasirinkimas duomenų bazei. Tai paprasta naudoti, ji plačiai palaikoma ir yra viena populiariausių reliacinių duomenų bazių.

Prieš tau pradedant

Kadangi bandysite ryšio kodą vietiniame MySQL serveryje, turėsite tai padaryti įdiegti MySQL serverį Pirmas. Kai tai padarysite, sukurkite tuščią duomenų bazę ir įsitikinkite, kad turite vartotojo vardą ir slaptažodį.

Sukurkite mazgo programą

Savo terminale paleiskite šią komandą, kad sukurtumėte naują mazgo programos aplanką:

mkdir node-mysql

Eikite į mazgas-mysql aplanką ir inicijuokite jį naudodami npm:

cd mazgas-mysql
npm init -y

Taip bus sukurtas paketas.json failas, kuriame, be kitų konfigūracijų, bus ir jūsų projekto priklausomybės.

Prijunkite mazgą prie MySQL

Yra keletas būdų, kaip prijungti mazgo programą prie „MySQL“. The mysql2 paketas yra puikus pasirinkimas, kurį galite įdiegti naudodami tokią komandą:

instagram viewer
npm įdiegti mysql2

Norint užmegzti ryšį, reikia kelių reikšmių, būtent pagrindinio kompiuterio, prievado, vartotojo, duomenų bazės ir slaptažodžio. Štai pavyzdys, kuris prisijungia prie duomenų bazės, vadinamos nodedb lokaliai įdiegtame MySQL serveryje.

konst config = {
šeimininkas: "localhost",
prievadas: 3306,
duomenų bazė: "nodedb",
vartotojas: "root",
Slaptažodis: "********",
}

Tai yra konfig objektą, kurį perkelsite į prisijungimo būdą, kaip nurodyta toliau pateiktoje programoje.

konst mysql = reikalauti("mysql2")

konst config = {
šeimininkas: "localhost",
duomenų bazė: "db_name",
vartotojas: "mysql_username",
slaptažodis: "mysql_password",
ryšio apribojimas: 100,
}

konst ryšys = mysql.createConnection (config)

connect.connect(funkcija(klysti) {
jeigu (klaida) mesti(klysta);
konsolė.log("Prisijungta!");
});

Kai perduodate išsamią duomenų bazės informaciją mysql.createConnection() metodu, sukuriate ryšio objektą. Ryšio objektas leis atlikti tokias operacijas kaip lentelių kūrimas, trynimas ar skaitymas.

Pavyzdžiui, šis kodas sukuria lentelę duomenų bazėje, prie kurios prisijungiate.

connect.connect(funkcija(klysti) {
jeigu (klaida) mesti klysti;
konsolė.log("Prisijungta!");

leisti CreateUser = „KURTI LENTELĖS naudotojus (naudotojo_id INT(100), vartotojo_vardas VARCHAR(255), el. paštas VARCHAR(255));

connect.query (createUser, funkcija(klaida, rezultatai, laukai) {
jeigu (err) {
konsolė.log (err.message);
}
});
});

Kai ją paleisite, ši užklausa sukurs naują lentelę, pavadintą vartotojų duomenų bazėje. Užklausoje naudojama įprasta sintaksė, prie kurios galite prisitaikyti sukurti MySQL duomenų bazės schemą kuri atitinka jūsų poreikius.

Aukščiau pateikta ryšio programa puikiai veikia, jei norite užmegzti tik vieną ryšį. Tačiau teikiant tuo pačiu metu prisijungimo užklausas, geriausia naudoti ryšio telkinį.

Prijunkite mazgą prie MySQL naudodami ryšių telkinį

Ryšių atidarymas ir uždarymas gali brangti, ypač kai jų yra daug. Duomenų bazės ryšio telkimas padeda sumažinti šias išlaidas, nes palaiko atvirų ryšių telkinį. Kai pateikiamas prašymas, baseinas gali suteikti atvirą ryšį pagal poreikį.

Tai darydami sutaupysite laiko, nes jums nereikia kiekvieną kartą atidaryti naujo ryšio.

Naudokite šį kodą, kad sukurtumėte ryšio telkinį „Node“:

konst mysql = reikalauti(„mysql2“);

konst config = {
šeimininkas: "vietinis šeimininkas",
duomenų bazė: "db_vardas",
Vartotojas: "mysql_vartotojo vardas",
Slaptažodis: "mysql_slaptažodis",
ryšio apribojimas: 100,
}

konst baseinas = mysql.createPool (config);

pool.query("SELECT * FROM some_table", (klaida, duomenys) => {
jeigu (klaida) mesti(klaida)
konsolė.log (duomenys);
});

Nepamirškite pakeisti konfigūracijos informacijos, kad ji atitiktų jūsų aplinką.

Saugus prisijungimas prie MySQL

Mysql2 biblioteka supaprastina Node programos prijungimo prie MySQL duomenų bazės procesą. Galite naudoti vieną klientą arba ryšių telkinį. Tačiau, jei turite pateikti keletą užklausų, geriausia naudoti ryšio telkinį, nes jis kainuoja pigiau.

Prisijungimas prie duomenų bazės yra tik pirmas žingsnis. Taip pat turėtumėte užtikrinti, kad duomenų bazėje saugomi duomenys būtų saugūs. Juk MySQL yra populiarus užpuolikų taikinys. Yra keletas pagrindinių veiksmų, kuriuos galite atlikti norėdami apsaugoti savo MySQL duomenų bazės serverį. Nustatykite patikimą vartotojo slaptažodį, apribokite nuotolinius prisijungimus ir nesuteikite nereikalingų privilegijų.