NodeJS

Menghubungkan MySQL dengan NodeJS

Menghubungkan MySQL dengan NodeJS
Server MySQL adalah server database yang sangat populer dan didukung oleh bahasa pemrograman yang banyak digunakan, seperti PHP, Python, Perl, Java, C#, dll. Ini adalah aplikasi sumber terbuka, sehingga siapa pun dapat mengunduh aplikasi ini untuk menyimpan, mengambil, memperbarui, dan menghapus data dengan menggunakan kueri basis data. Anda akan memerlukan paket server dan klien untuk diinstal di sistem Anda untuk melakukan berbagai jenis operasi database di server database database. Server MySQL sekarang menjadi populer untuk pengembang Node juga. Pengembang node mulai menggunakan server MySQL dengan MongoDB untuk beberapa fitur khusus dari server MySQL. Bagaimana Anda dapat membuat koneksi dengan server MySQL menggunakan klien node-mysql ditampilkan dalam tutorial ini.

Prasyarat:

Sebelum memulai tutorial ini, Anda harus mengonfirmasi bahwa server MySQL dan paket klien telah diinstal dan berfungsi dengan baik di sistem Anda. Jika Anda menginstal server MySQL untuk pertama kalinya maka kata sandi pengguna root secara default kosong. Tetapi Anda harus mengatur kata sandi untuk pengguna root untuk membuat koneksi dengan server MySQL menggunakan simpul-mysql klien. Anda dapat memeriksa tutorial ini untuk mengetahui cara mengubah kata sandi root dari server MySQL.

Jalankan perintah berikut untuk bekerja sebagai pengguna root dan terhubung dengan server MySQL dengan menggunakan klien MySQL.

$ sudo -i
$ mysql -u root -p

Masukkan kata sandi root dan jalankan perintah SQL berikut untuk membuat database baru, buat tabel di database itu dan masukkan beberapa catatan di tabel itu.

Perintah berikut akan membuat database bernama mydb.

BUAT DATABASE mydb;

Perintah berikut untuk memilih database untuk melakukan operasi database.

gunakan mydb;

Perintah berikut akan membuat tabel bernama Book dalam database mydb.

BUAT TABEL buku (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
judul VARCHAR(50) NOT NULL,
penulis VARCHAR(50) BUKAN NULL,
harga int(5));

Perintah berikut akan memasukkan empat catatan ke dalam Book meja.

MASUKKAN KE DALAM nilai buku
(NULL,'Mempelajari PHP dan MySQL', 'Robin Nixon', 45),
(NULL, 'Belajar JQuery', 'Jonathan', 35),
(NULL,'Aksi Sudut', 'Jeremy', 50),
(NULL,'Menguasai Laravel', 'Christopher', 55);

Instal klien mysql untuk nodejs:

Jalankan perintah berikut untuk memeriksa nodejs diinstal di sistem sebelum menjalankan perintah menginstal klien mysql dari nodejs. Ini akan menampilkan versi terinstal dari nodejs.

$ simpul -v

Jika tidak diinstal maka Anda harus menginstalnya dengan menjalankan perintah berikut following.

$ sudo apt-get install nodejs

Anda akan membutuhkan paket lain bernama npm untuk diinstal di sistem untuk menginstal klien mysql untuk nodejs. Jika tidak diinstal sebelum menjalankan perintah berikut untuk menginstal npm.

$ sudo apt-get install npm

Sekarang, jalankan perintah berikut untuk memperbarui sistem.

$ sudo apt-get update

Perintah berikut akan menginstal mysql modul untuk nodejs yang akan berfungsi sebagai klien mysql.

$npm instal mysql

Koneksi MySQL sederhana menggunakan NodeJS:

Buat file JS bernama koneksi1.js dengan skrip berikut untuk membuat koneksi dengan database yang dibuat sebelumnya bernama mydb dan membaca data dari Book meja. mysql modul diimpor dan digunakan untuk membuat koneksi sederhana dengan server MySQL. Selanjutnya, sebuah query akan dieksekusi untuk membaca semua record dari Book tabel, jika database terhubung dengan benar. Jika kueri dijalankan dengan benar maka semua catatan dari Book tabel akan dicetak di terminal dan koneksi database akan ditutup.

koneksi1.js

// Impor modul mysql
biarkan mysql = membutuhkan('mysql');
// Atur parameter koneksi database
biarkan koneksi = mysql.buatKoneksi(
tuan rumah: 'host lokal',
pengguna: 'akar',
kata sandi: '1234',
basis data: 'mydb'
);
// Terhubung dengan database
koneksi.menghubungkan(fungsi(e)
jika (e)
// Tampilkan pesan kesalahan saat gagal
kembali konsol.error('kesalahan: ' + e.pesan);

// Tampilkan pesan sukses jika terhubung
menghibur.log('\nTerhubung ke server MySQL… \n');
);
// Setel pesan kueri
$query = 'PILIH * dari buku';
// Jalankan kueri basis data
koneksi.query($query, fungsi(e, baris)
jika(e)
// Tampilkan pesan kesalahan
menghibur.log("Terjadi kesalahan dalam menjalankan kueri.");
kembali;

/* Menampilkan data terformat yang diambil dari tabel 'buku'
menggunakan perulangan for */
menghibur.log("Catatan tabel buku:\n");
menghibur.log("Judul\t\t\t\t Penulis\t\tharga\n");
for(biarkan baris dari baris)
menghibur.log(row['title'],"\t\t",row['author'],"\t","$",row['price']);

);
// Tutup koneksi database
koneksi.akhir(fungsi()
menghibur.log('\nKoneksi ditutup.\n');
);

Keluaran:

Jalankan perintah berikut untuk menjalankan skrip.

$ koneksi simpul1.js

Output berikut akan muncul setelah menjalankan skrip:.

Koneksi MySQL gabungan menggunakan NodeJS:

Membuat koneksi MySQL sederhana dengan NodeJS menggunakan mysql modul ditunjukkan pada contoh sebelumnya. Tetapi banyak pengguna dapat terhubung dengan server database sekaligus melalui aplikasi saat aplikasi dibuat dengan MySQL database untuk tujuan produksi. Anda akan membutuhkan mengekspresikan modul untuk menangani pengguna basis data secara bersamaan dan mendukung beberapa koneksi basis data.

Jalankan perintah berikut untuk menginstal mengekspresikan modul.

$npm instal ekspres

Buat file JS bernama koneksi2.js dengan skrip berikut. Jika Anda terhubung dengan MySQL dengan skrip berikut maka 10 pengguna bersamaan akan dapat membuat koneksi dengan server database dan mengambil data dari tabel berdasarkan kueri. Ini akan membuat koneksi di port 5000.

koneksi2.js

// Impor modul mysql
var mysql = membutuhkan('mysql');
// Impor modul ekspres
var ekspres = membutuhkan("ekspres");
// Tentukan objek modul ekspres
var aplikasi = ekspres();
// Buat koneksi database untuk menangani 10 pengguna bersamaan concurrent
var pool = mysql.buatKolam(
batas koneksi: 10,
tuan rumah: 'localhost',
pengguna: 'akar',
kata sandi: '1234',
basis data: 'mydb',
debug: benar
);
/* Buat koneksi gabungan dengan database dan baca catatan tertentu dari tabel itu
basis data */
fungsi handle_database(permintaan,tanggapan)
// Buat koneksi
kolam.getConnection(fungsi(e,koneksi)
jika (e)
//Kirim pesan kesalahan untuk koneksi yang gagal dan putus
tanggapan.json("code" : 300, "status" : "Database connection errror");
kembali;

// Menampilkan pesan sukses di terminal
menghibur.log('Database terhubung');
// Baca catatan tertentu dari tabel buku
koneksi.query("PILIH * dari buku dengan judul seperti '%PHP%' atau judul seperti
'%Laravel%'",fungsi(e,baris) koneksi.melepaskan();
jika(!e)
// Kembalikan hasil kueri jika berhasil dieksekusi
tanggapan.json(baris);

);
// Periksa kesalahan koneksi terjadi atau tidak
koneksi.pada('kesalahan', fungsi(e)
tanggapan.json("code" : 300, "status" : "Database connection errror");
kembali;
);
);

// Panggil fungsi untuk membuat koneksi
aplikasi.dapatkan("/",fungsi(permintaan,tanggapan)-
handle_database(permintaan,tanggapan);
);
// Dengarkan permintaan koneksi pada port 5000
aplikasi.mendengarkan(5000);

Keluaran:

Jalankan skrip dari terminal seperti contoh sebelumnya. Itu akan menunggu permintaan koneksi setelah menjalankan skrip.

$ koneksi simpul2.js

Sekarang, buka browser apa saja dan buka URL berikut untuk mengirim permintaan koneksi.

http://localhost:5000

Output berikut akan muncul sebagai respons setelah menjalankan kueri.

Jika Anda membuka terminal sekarang maka Anda akan melihat output berikut:.

Sepuluh permintaan koneksi dapat dikirim sekaligus dari 10 browser dengan cara yang disebutkan di atas.

Kesimpulan:

Cara paling sederhana untuk bekerja dengan MySQL dan NodeJS ditunjukkan oleh dua contoh dalam tutorial ini. Jika Anda seorang pengembang Node baru dan ingin bekerja dengan database MySQL maka saya harap Anda dapat melakukan tugas Anda setelah membaca tutorial ini.

5 Game Arkade Terbaik untuk Linux
Saat ini, komputer adalah mesin serius yang digunakan untuk bermain game. Jika Anda tidak bisa mendapatkan skor tinggi baru, Anda akan tahu apa yang s...
Pertempuran Untuk Wesnoth 1.13.6 Pengembangan Dirilis
Pertempuran Untuk Westnoth 1.13.6 dirilis bulan lalu, adalah rilis pengembangan keenam dalam 1.13.x series dan memberikan sejumlah peningkatan, teruta...
Cara Menginstal League Of Legends di Ubuntu 14.04
Jika Anda adalah penggemar League of Legends, maka ini adalah kesempatan bagi Anda untuk menguji coba League of Legends. Perhatikan bahwa LOL didukung...