Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Node.js MySQL wymaga trwałego połączenia

Użyj puli połączeń mysql. Połączy się ponownie, gdy połączenie zostanie zerwane, a Ty uzyskasz dodatkową korzyść w postaci możliwości wykonywania wielu zapytań sql w tym samym czasie. Jeśli nie korzystasz z puli bazy danych, Twoja aplikacja będzie blokować żądania bazy danych podczas oczekiwania na zakończenie aktualnie uruchomionych żądań bazy danych.

Zwykle definiuję moduł bazy danych, w którym moje zapytania są oddzielone od moich tras. Wygląda mniej więcej tak...

var mysql = require('mysql');
var pool  = mysql.createPool({
  host     : 'example.org',
  user     : 'bob',
  password : 'secret'
});

exports.getUsers = function(callback) {
  pool.getConnection(function(err, connection) {
    if(err) { 
      console.log(err); 
      callback(true); 
      return; 
    }
    var sql = "SELECT id,name FROM users";
    connection.query(sql, [], function(err, results) {
      connection.release(); // always put connection back in pool after last query
      if(err) { 
        console.log(err); 
        callback(true); 
        return; 
      }
      callback(false, results);
    });
  });
});


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Usuń klauzulę limit z MySQL Workbench

  2. Mysql Nie można było nawiązać połączenia, ponieważ maszyna docelowa aktywnie je odrzuciła

  3. Zwracana wartość procedury składowanej MySQL

  4. Sterownik MySQL dla Rails w Windows 7 x64

  5. Wstawianie rekordów do tabeli MySQL za pomocą Javy