NodeJS

Łączenie MySQL z NodeJS

Łączenie MySQL z NodeJS
Serwer MySQL jest bardzo popularnym serwerem baz danych i jest obsługiwany przez najczęściej używane języki programowania, takie jak PHP, Python, Perl, Java, C# itp. Jest to aplikacja typu open source, więc każdy może pobrać tę aplikację do przechowywania, pobierania, aktualizowania i usuwania danych za pomocą zapytań do bazy danych. Będziesz wymagał zainstalowania w systemie pakietów serwera i klienta, aby wykonywać różne typy operacji na bazie danych na serwerze bazy danych. Serwer MySQL staje się teraz popularny również wśród programistów Node. Deweloperzy węzłów zaczynają używać serwera MySQL z MongoDB dla niektórych specjalnych funkcji serwera MySQL. Jak nawiązać połączenie z serwerem MySQL za pomocą klienta node-mysql pokazano w tym samouczku.

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 sprawdzić ten samouczek, aby dowiedzieć się, 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 root -p

Wprowadź hasło roota i uruchom następujące polecenia SQL, aby utworzyć nową bazę danych, utworzyć tabelę w tej bazie danych i wstawić kilka rekordów w tej tabeli.

Następujące polecenie utworzy bazę danych o nazwie mydb.

UTWÓRZ BAZĘ DANYCH mydb;

Następujące polecenie, aby wybrać bazę danych do wykonywania operacji na bazie danych.

użyj mydb;

Następujące polecenie utworzy tabelę o nazwie książka w bazie danych mydb.

UTWÓRZ TABELĘ książka (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
tytuł VARCHAR(50) NOT NULL,
autor VARCHAR(50) NOT NULL,
cena int(5));

Następujące polecenie wstawi cztery rekordy do książka stół.

WSTAWIĆ DO wartości księgowych
(NULL, 'Nauka PHP i MySQL', 'Robin Nixon', 45),
(NULL, 'Nauka JQuery', 'Jonathan', 35),
(NULL,'Kątowy w akcji', 'Jeremy', 50),
(NULL, 'Opanowanie Laravela', 'Christopher', 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. Wyświetli zainstalowaną wersję nodejs.

$ węzeł -v

Jeśli nie jest zainstalowany, musisz go zainstalować, uruchamiając następujące polecenie.

$ sudo apt-get install nodejs

Bę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 install npm

Teraz uruchom następujące polecenie, aby zaktualizować system.

$ sudo apt-get update

Zostanie zainstalowana następująca komenda mysql moduł dla nodejs, który będzie działał jako klient mysql.

$ npm zainstaluj mysql

Proste 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 stół. 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 tabela, czy baza danych jest podłączona prawidłowo. Jeśli zapytanie zostało wykonane poprawnie, to wszystkie rekordy książka tabela zostanie wydrukowana w terminalu, a połączenie z bazą danych zostanie zamknięte.

połączenie1.js

// Importuj moduł mysql
niech mysql = require('mysql');
// Ustaw parametr połączenia z bazą danych
niech połączenie = mysql.utwórzPołączenie(
host: 'host lokalny',
użytkownik: 'root',
hasło: '1234',
baza danych: 'moja_baza'
);
// Połącz z bazą danych
połączenie.połącz(funkcja(e)
jeśli (e)
// Pokaż komunikat o błędzie w przypadku niepowodzenia
zwrot konsoli.error('błąd: ' + e.wiadomość);

// Pokaż komunikat o powodzeniu, jeśli jest podłączony
konsola.log('\nPołączono z serwerem MySQL… \n');
);
// Ustaw wiadomość zapytania
$query = 'WYBIERZ * z książki';
// Wykonaj zapytanie do bazy danych
połączenie.zapytanie($zapytanie, funkcja(e, wiersze)
jeśli(e)
// Pokaż komunikat o błędzie
konsola.log("Wystąpił błąd podczas wykonywania zapytania.”);
powrót;

/* Wyświetl sformatowane dane pobrane z tabeli 'book'
używanie pętli for */
konsola.log("Rekordy tabeli książki:\n");
konsola.log("Tytuł\t\t\t\t Autor\t\tcena\n");
for(niech wiersz wierszy)
konsola.log(row['tytuł'],"\t\t",row['autor'],"\t","$",row['cena']);

);
// Zamknij połączenie z bazą danych
połączenie.koniec(funkcja()
konsola.log('\nPołączenie zamknięte.\n');
);

Wynik:

Uruchom następujące polecenie, aby wykonać skrypt.

$ połączenie węzła1.js

Następujące 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 połą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ł.

$ npm install express

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ł mysql
var mysql = require('mysql');
// Importuj moduł ekspresowy
var express = require("ekspres");
// Zdefiniuj obiekt modułu ekspresowego
var aplikacja = ekspres();
// Nawiąż połączenie z bazą danych, aby obsłużyć 10 jednoczesnych użytkowników
var pula = mysql.utwórz pulę (
Limit połączenia :10,
host : 'hostlokalny',
użytkownik : 'root',
hasło : '1234',
baza danych : 'mydb',
debugowanie : prawda
);
/* Nawiąż połączenie w puli z bazą danych i odczytaj określone rekordy z tabeli tego
Baza danych */
function handle_database(żądanie,odpowiedź)
// Dokonać połączenia
basen.getConnection(funkcja(e,połączenie)
jeśli (e)
//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.log('Baza danych połączona');
// Odczytaj poszczególne rekordy z tabeli księgowej
połączenie.query("WYBIERZ * z książki, gdzie tytuł taki jak '%PHP%' lub tytuł taki jak
'% Laravel%'",function(e,rows) connection.wydanie();
gdyby(!e)
// Zwróć wynik zapytania, jeśli zostało pomyślnie wykonane
odpowiedź.json(wiersze);

);
// Sprawdź, czy wystąpił błąd połączenia, czy nie
połączenie.on('błąd', funkcja(e)
odpowiedź.json("kod" : 300, "status" : "Błąd połączenia z bazą danych");
powrót;
);
);

// Wywołaj funkcję do tworzenia połączeń
aplikacja.pobierz("/",function(żądanie,odpowiedź)-
handle_database(żądanie,odpowiedź);
);
// Odsłuchaj żądanie połączenia na porcie 5000
aplikacja.słuchać(5000);

Wynik:

Uruchom skrypt z terminala jak w poprzednim przykładzie. Po uruchomieniu skryptu poczeka na żądanie połączenia.

$ połączenie węzła2.js

Teraz otwórz dowolną przeglądarkę i przejdź do następującego adresu URL, aby wysłać prośbę o połączenie.

http://localhost:5000

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ęć próśb o połączenie 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 będziesz w stanie wykonać swoje zadanie po przeczytaniu tego samouczka.

Gry Jak przechwytywać i przesyłać strumieniowo sesję gry w systemie Linux
Jak przechwytywać i przesyłać strumieniowo sesję gry w systemie Linux
W przeszłości granie w gry było uważane tylko za hobby, ale z czasem branża gier odnotowała ogromny wzrost pod względem technologii i liczby graczy. P...
Gry Najlepsze gry do grania ze śledzeniem rąk
Najlepsze gry do grania ze śledzeniem rąk
Oculus Quest niedawno wprowadził świetny pomysł śledzenia rąk bez kontrolerów. Przy stale rosnącej liczbie gier i działań, które wspierają zarówno for...
Gry Jak wyświetlić nakładkę OSD w pełnoekranowych aplikacjach i grach dla systemu Linux?
Jak wyświetlić nakładkę OSD w pełnoekranowych aplikacjach i grach dla systemu Linux?
Granie w gry pełnoekranowe lub korzystanie z aplikacji w trybie pełnoekranowym bez rozpraszania uwagi może odciąć Cię od istotnych informacji systemow...