Warunek wstępny:
Przed rozpoczęciem tego samouczka musisz upewnić się, że pakiety serwera i klienta MySQL są zainstalowane i działają poprawnie w twoim systemie. Jeśli instalujesz serwer MySQL po raz pierwszy, hasło użytkownika root jest domyślnie puste. Ale musisz ustawić hasło dla użytkownika root, aby nawiązać połączenie z serwerem MySQL za pomocą node-mysql klient. Możesz to sprawdzić instruktaż wiedzieć, jak zmienić hasło roota serwera MySQL.
Uruchom następujące polecenia, aby pracować jako użytkownik root i połączyć się z serwerem MySQL za pomocą klienta MySQL.
$sudo -i
$ mysql-uźródło-P
Wprowadź hasło root i uruchom następujące polecenia SQL, aby utworzyć nową bazę danych, utworzyć tabelę w tej bazie danych i wstawić kilka rekordów do tej tabeli.
Następujące polecenie utworzy bazę danych o nazwie mydb .
STWÓRZ BAZA DANYCH mydb;
Następujące polecenie, aby wybrać bazę danych do wykonywania operacji na bazie danych.
posługiwać się mydb;Następujące polecenie utworzy tabelę o nazwie książka w bazie danych mydb.
STWÓRZ TABELA książka(
NS WEWN (6) NIEPODPISANY AUTO_INCREMENT GŁÓWNY KLUCZ ,
tytuł VARCHAR (pięćdziesiąt) NIE ZERO ,
autor VARCHAR (pięćdziesiąt) NIE ZERO ,
Cena £ int (5));
Następujące polecenie wstawi cztery rekordy do książka Tabela.
WSTAWIĆ DO książka wartości( ZERO ,„Nauka PHP i MySQL”, „Robin Nixon”, Cztery pięć),
( ZERO ,„Nauka JQuery”, „Jonathan”, 35),
( ZERO ,„Kątowy w działaniu”, Jeremy, pięćdziesiąt),
( ZERO ,„Opanowanie Laravela”, 'Krzysztof', 55);
Zainstaluj klienta mysql dla nodejs:
Uruchom następujące polecenie, aby sprawdzić nodejs jest instalowany w systemie przed uruchomieniem polecenia instalacji klienta mysql węzła nodejs. Pokaże zainstalowaną wersję nodejs.
$węzeł-vJeśli nie jest zainstalowany, musisz go zainstalować, uruchamiając następujące polecenie.
$sudo apt-get installnodejsBędziesz potrzebować innego pakietu o nazwie npm do zainstalowania w systemie, aby zainstalować klienta mysql dla nodejs. Jeśli nie jest zainstalowany przed uruchomieniem następującego polecenia, aby zainstalować npm .
$sudo apt-get installnpmTeraz uruchom następujące polecenie, aby zaktualizować system.
$sudo aktualizacja apt-getZostanie zainstalowana następująca komenda mysql moduł dla nodejs, który będzie działał jako klient mysql.
$npmzainstalowaćmysqlProste połączenie MySQL przy użyciu NodeJS:
Utwórz plik JS o nazwie połączenie1.js za pomocą poniższego skryptu, aby nawiązać połączenie z wcześniej utworzoną bazą danych o nazwie mydb i odczytaj dane z książka Tabela. mysql moduł jest importowany i służy do tworzenia prostego połączenia z serwerem MySQL. Następnie zostanie wykonane zapytanie, aby odczytać wszystkie rekordy z książka tabeli, jeśli baza danych jest podłączona prawidłowo. Jeśli zapytanie zostało wykonane poprawnie, to wszystkie rekordy książka w terminalu zostanie wydrukowana tabela, a połączenie z bazą danych zostanie zamknięte.
połączenie1.js
// Importuj moduł mysqlniech mysql=wymagać('mysql');
// Ustaw parametr połączenia z bazą danych
pozwól na połączenie=mysql.utwórz połączenie({
gospodarz: 'Lokalny Gospodarz',
użytkownik: 'źródło',
hasło: '1234',
Baza danych: „moja baza”
});
// Połącz z bazą danych
połączenie.łączyć(funkcjonować(I) {
Jeśli (I) {
// Pokaż komunikat o błędzie w przypadku niepowodzenia
powrótkonsola.błąd('błąd: ' +I.wiadomość);
}
// Pokaż komunikat o powodzeniu, jeśli jest podłączony
konsola.Dziennik(' Połączono z serwerem MySQL... ');
});
// Ustaw wiadomość zapytania
$zapytanie= 'WYBIERZ * z książki';
// Wykonaj zapytanie do bazy danych
połączenie.zapytanie($zapytanie, funkcjonować(I,wydziwianie) {
Jeśli(I){
// Pokaż komunikat o błędzie
konsola.Dziennik('Wystąpił błąd podczas wykonywania zapytania.');
powrót;
}
/* Wyświetl sformatowane dane pobrane z tabeli 'book'
używanie pętli for */
konsola.Dziennik(„Zapisy tabeli księgowej: ');
konsola.Dziennik('TytułTTTTAutorTTCena £ ');
dla(niech rząd rzędów) {
konsola.Dziennik(wiersz['tytuł'],'TT',wiersz['autor'],'T',„$”,wiersz['Cena £']);
}
});
// Zamknij połączenie z bazą danych
połączenie.kończyć się(funkcjonować(){
konsola.Dziennik(' Połączenie zamknięte. ');
});
Wyjście:
Uruchom następujące polecenie, aby wykonać skrypt.
$połączenie węzła1.jsPoniższe dane wyjściowe pojawią się po uruchomieniu skryptu.
Połączenie MySQL w puli przy użyciu NodeJS:
Tworzenie prostego połączenia MySQL z NodeJS przy użyciu mysql moduł jest pokazany w poprzednim przykładzie. Ale wielu użytkowników może łączyć się z serwerem bazy danych na raz za pośrednictwem aplikacji, gdy aplikacja jest tworzona za pomocą MySQL baza danych do celów produkcyjnych. Będziesz potrzebował wyrazić moduł do obsługi jednoczesnych użytkowników bazy danych i obsługi wielu połączeń z bazą danych.
Uruchom następujące polecenie, aby zainstalować wyrazić moduł.
$npmzainstalowaćwyrazićUtwórz plik JS o nazwie połączenie2.js z następującym skryptem. Jeśli połączysz się z MySQL za pomocą poniższego skryptu, to 10 jednoczesnych użytkowników będzie mogło nawiązać połączenie z serwerem bazy danych i pobrać dane z tabeli na podstawie zapytania. Nawiąże połączenie na porcie 5000.
połączenie2.js
// Importuj moduł mysqlgdziemysql=wymagać('mysql');
// Importuj moduł ekspresowy
gdziewyrazić=wymagać('wyrazić');
// Zdefiniuj obiekt modułu ekspresowego
gdzieaplikacja=wyrazić();
// Nawiąż połączenie z bazą danych, aby obsłużyć 10 jednoczesnych użytkowników
gdziebasen=mysql.utwórz basen({
limit połączenia:10,
gospodarz: 'Lokalny Gospodarz',
użytkownik: 'źródło',
hasło: '1234',
Baza danych: „moja baza”,
odpluskwić: prawda
});
/* Nawiąż połączenie w puli z bazą danych i odczytaj określone rekordy z tabeli tego
Baza danych */
funkcjonowaćuchwyt_bazy danych(wniosek,odpowiedź) {
// Dokonać połączenia
basen.pobierz połączenie(funkcjonować(I,połączenie){
Jeśli (I) {
//Wyślij komunikat o błędzie dla nieudanego połączenia i zakończ
odpowiedź.json({'kod' : 300, 'status' : „Błąd połączenia z bazą danych”});
powrót;
}
// Wyświetl komunikat o powodzeniu w terminalu
konsola.Dziennik(„Połączono z bazą danych”);
// Odczytaj poszczególne rekordy z tabeli księgowej
połączenie.zapytanie('WYBIERZ * z książki, gdzie tytuł taki jak '%PHP%' lub tytuł taki jak
'%Laravel%',funkcjonować(I,wydziwianie){połączenie.uwolnienie();
Jeśli(!I) {
// Zwróć wynik zapytania, jeśli zostało pomyślnie wykonane
odpowiedź.json(wydziwianie);
}
});
// Sprawdź, czy wystąpił błąd połączenia, czy nie
połączenie.na('błąd', funkcjonować(I) {
odpowiedź.json({'kod' : 300, 'status' : „Błąd połączenia z bazą danych”});
powrót;
});
});
}
// Wywołaj funkcję do tworzenia połączeń
aplikacja.dostwać('/',funkcjonować(wniosek,odpowiedź){-
uchwyt_bazy danych(wniosek,odpowiedź);
});
// Odsłuchaj żądanie połączenia na porcie 5000
aplikacja.słuchać(5000);
Wyjście:
Uruchom skrypt z terminala, tak jak w poprzednim przykładzie. Po uruchomieniu skryptu poczeka na żądanie połączenia.
$połączenie węzła2.jsTeraz otwórz dowolną przeglądarkę i przejdź do następującego adresu URL, aby wysłać żądanie połączenia.
Następujące dane wyjściowe pojawią się jako odpowiedź po wykonaniu zapytania.
Jeśli otworzysz teraz terminal, zobaczysz następujące wyjście.
Dziesięć żądań połączenia może być wysłanych jednocześnie z 10 przeglądarek w sposób opisany powyżej.
Wniosek:
Najprostsze sposoby pracy z MySQL i NodeJS są pokazane na dwóch przykładach w tym samouczku. Jeśli jesteś nowym deweloperem Node i chcesz pracować z bazą danych MySQL, mam nadzieję, że po przeczytaniu tego samouczka będziesz w stanie wykonać swoje zadanie.