Topik ini menjelaskan cara menggunakan driver MySQL2 dari Node.js untuk menghubungkan dan menggunakan LindormTable.
Prasyarat
Fitur kompatibilitas MySQL diaktifkan untuk instans tersebut. Untuk informasi selengkapnya, lihat Aktifkan fitur kompatibilitas MySQL.
Alamat IP klien Anda telah ditambahkan ke daftar putih instans Lindorm Anda. Untuk informasi selengkapnya, lihat Konfigurasikan daftar putih.
Prosedur
Instal Node.js. Anda dapat mengunduh paket instalasi Node.js dari situs resmi Node.js.
Instal driver MySQL2. Anda dapat mengunduh driver MySQL2 dari halaman NPM MySQL2.
Konfigurasikan parameter koneksi.
connection = mysql.createConnection({ host: 'ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com', port: 33060, user: 'user', password: 'test', database: 'default', connectTimeout: 10000 });Parameter
Parameter
Deskripsi
host
Titik akhir yang kompatibel dengan MySQL untuk LindormTable. Untuk informasi selengkapnya tentang cara memperoleh titik akhir tersebut, lihat Lihat alamat koneksi.
PentingJika aplikasi Anda dideploy pada instance ECS, kami menyarankan Anda menggunakan VPC untuk menghubungkan ke instans Lindorm guna memastikan keamanan lebih tinggi dan latensi jaringan lebih rendah.
Jika aplikasi Anda dideploy secara lokal, aktifkan titik akhir publik di Konsol sebelum menghubungkan ke instans Lindorm melalui jaringan publik. Untuk melakukannya, pilih . Pada tab Wide Table Engine, klik Enable Public Endpoint.
Jika Anda mengakses instans Lindorm melalui virtual private cloud (VPC), atur host ke alamat VPC yang kompatibel dengan MySQL. Jika Anda mengakses instans Lindorm melalui jaringan publik, atur host ke alamat Internet yang kompatibel dengan MySQL.
port
Port yang digunakan untuk mengakses LindormTable menggunakan MySQL. Nilai parameter ini tetap 33060.
user
Jika Anda lupa kata sandi, Anda dapat mengubahnya di sistem manajemen kluster LindormTable. Untuk informasi selengkapnya, lihat Manage users.
password
database
Nama database yang ingin Anda hubungkan. Secara default, client Anda terhubung ke database bernama default.
connectTimeout
Periode timeout koneksi. Satuan: milidetik. Nilai default: 10000.
Buat koneksi ke LindormTable untuk menjalankan kueri menggunakan sintaks SQL tabel lebar. Sebagai contoh, Anda dapat melakukan kueri terhadap semua database.
connection.connect(function(err) { if (err) { throw err; } console.log("Connection established."); connection.query('show databases', function(err1, results, fields) { if (err1) { throw err1; } console.log(fields) console.log(results) }); connection.end(function(err2) { if (err2) { throw err2; } console.log("Connection closed."); }); });
Kode contoh
Berikut ini adalah kode contoh lengkap:
var mysql = require('mysql2');
var connection = mysql.createConnection({
// The MySQL-compatible endpoint for LindormTable
host: 'ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com',
// The port for the MySQL protocol of LindormTable. The value is fixed to 33060.
port: 33060,
// The username for LindormTable.
user: 'user',
// The password for LindormTable.
password: 'test',
// The name of the database to connect to.
database: 'default ',
// The connection timeout. The default value is 10000 milliseconds.
connectTimeout: 10000
});
connection.connect(function(err) {
if (err) {
throw err;
}
console.log("Connection established.");
connection.query('show databases', function(err1, results, fields) {
if (err1) {
throw err1;
}
console.log(fields)
console.log(results)
});
connection.end(function(err2) {
if (err2) {
throw err2;
}
console.log("Connection closed.");
});
});Jika instans saat ini hanya berisi satu database bernama default, hasil berikut akan dikembalikan:
Connection established.
Connection closed.
[ `DATABASE` VARCHAR(0) ]
[ { DATABASE: 'default' }, { DATABASE: 'information_schema' } ]