Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Node.js ssh2 tunnel tetap hidup dan jalankan kueri mysql

Dalam hal menggunakan driver database secara langsung, jika Anda menggunakan mysql2 bukannya mysql , Anda benar-benar dapat melewatkan aliran yang diteruskan ssh sebagai koneksi dasar yang akan digunakan oleh driver database. Ini akan memungkinkan Anda untuk melewati keharusan membuat server tambahan yang mendengarkan koneksi masuk yang akan disalurkan. Jadi Anda dapat melakukan sesuatu seperti ini sebagai gantinya:

var mysql = require('mysql2');
var Client = require('ssh2').Client;

var ssh = new Client();
ssh.on('ready', function() {
  ssh.forwardOut(
    '127.0.0.1',
    12345,
    '127.0.0.1',
    3306,
    function (err, stream) {
      if (err) throw err;
      var sql = mysql.createConnection({
        user: 'foo',
        database: 'test',
        stream: stream // <--- this is the important part
      });
      // use sql connection as usual
  });
}).connect({
  // ssh connection config ...
});



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hitung jarak koordinat di Laravel

  2. Cara menonaktifkan opsi only_full_group_by di Laravel

  3. cari database berdasarkan nilai yang dipilih dari database

  4. Permintaan MySQL mengambil alih 6 detik

  5. Menonaktifkan pemeriksaan kunci asing di baris perintah