Већина апликација из стварног света задржава податке у базама података. Зато је важно знати како да повежете своју апликацију са базом података и преузмете податке из ње.

МиСКЛ је одличан избор за базу података. Једноставан је за коришћење, има широку подршку и једна је од најпопуларнијих релационих база података.

Пре него што почнете

Пошто ћете тестирати код везе на локалном МиСКЛ серверу, мораћете инсталирајте МиСКЛ сервер први. Када то учините, направите празну базу података и уверите се да имате корисничко име и лозинку.

Креирајте апликацију чвора

У свом терминалу покрените следећу команду да бисте креирали нову фасциклу за апликацију чвора:

мкдир ноде-мискл

Идите до ноде-мискл фолдер и иницијализујте га користећи нпм:

цд ноде-мискл
нпм инит -и

Ово ће генерисати датотеку пацкаге.јсон која ће, између осталих конфигурација, садржати зависности вашег пројекта.

Повежите чвор са МиСКЛ

Постоји неколико начина на које можете повезати своју апликацију чвора са МиСКЛ-ом. Тхе мискл2 пакет је одличан избор, који можете инсталирати наредбом попут ове:

нпм инсталл мискл2

Да бисте успоставили везу, потребно вам је неколико вредности, односно хост, порт, корисник, база података и лозинка. Ево примера који се повезује са базом података тзв нодедб на МиСКЛ серверу инсталираном локално.

конст конфигурација = {
хост: "лоцалхост",
Лука: 3306,
база података: "нодедб",
корисник: "роот",
Лозинка: "********",
}

Ово је цонфиг објекат који ћете проследити методу повезивања као у програму испод.

конст мискл = захтевају("мискл2")

конст конфигурација = {
хост: "лоцалхост",
база података: "дб_наме",
корисник: "мискл_усернаме",
лозинка: "мискл_пассворд",
ограничење везе: 100,
}

конст веза = мискл.цреатеЦоннецтион (цонфиг)

цоннецтион.цоннецт(функција(ерр) {
ако (ерр) бацити(ерр);
конзола.лог("Повезано!");
});

Када проследите детаље базе података у мискл.цреатеЦоннецтион() метод, креирате објекат везе. Објекат везе ће вам омогућити да обављате трансакције попут креирања, брисања или читања табела.

На пример, следећи код креира табелу у бази података на коју се повезујете.

цоннецтион.цоннецт(функција(ерр) {
ако (ерр) бацити ерр;
конзола.лог("Повезано!");

дозволити цреатеУсер = `КРЕИРАЈТЕ ТАБЛЕ корисника (кориснички_ид ИНТ(100), корисничко_име ВАРЦХАР(255), имејл ВАРЦХАР(255))`;

цоннецтион.куери (цреатеУсер, функција(грешка, резултати, поља) {
ако (ерр) {
конзола.лог (ерр.мессаге);
}
});
});

Када га покренете, овај упит ће креирати нову табелу под називом корисника у бази података. Упит користи уобичајену синтаксу којој се можете прилагодити креирајте МиСКЛ шему базе података који одговара вашим потребама.

Горњи програм за повезивање ради добро ако желите да успоставите само једну везу. Међутим, када правите истовремене захтеве за повезивање, најбоље је користити скуп веза.

Повежите чвор са МиСКЛ користећи скуп веза

Отварање и затварање веза може постати скупо, посебно када их има много. Груписање веза базе података помаже у смањењу овог трошка одржавањем скупа отворених веза. Када се постави захтев, базен може да обезбеди отворену везу на захтев.

На тај начин штедите време јер не морате сваки пут да отварате нову везу.

Користите следећи код да бисте креирали скуп веза у чвору:

конст мискл = захтевају("мискл2");

конст конфигурација = {
домаћин: "локални домаћин",
база података: "дб_наме",
корисник: "мискл_усернаме",
Лозинка: "мискл_пассворд",
ограничење везе: 100,
}

конст поол = мискл.цреатеПоол (цонфиг);

поол.куери("СЕЛЕЦТ * ФРОМ соме_табле", (ерр, дата) => {
ако (ерр) бацити(ерр)
конзола.лог (подаци);
});

Не заборавите да промените детаље конфигурације тако да одговарају вашем окружењу.

Безбедно повезивање са МиСКЛ

Библиотека мискл2 поједностављује процес повезивања Ноде апликације са МиСКЛ базом података. Можете користити или једног клијента или скуп веза. Међутим, ако морате да направите више захтева, најбоље је да користите скуп веза јер је јефтинији.

Повезивање са базом података је само први корак. Такође треба да се уверите да су подаци које чувате у бази података безбедни. На крају крајева, МиСКЛ је популарна мета нападача. Постоје неки основни кораци које можете предузети да бисте заштитили свој МиСКЛ сервер базе података. Поставите јаку корисничку лозинку, ограничите удаљено пријављивање и немојте давати непотребне привилегије.