Поиск…


Использование пула соединений без базы данных

Достижение многопоточности на сервере базы данных с несколькими базами данных, размещенными на нем.

В настоящее время многоуровневость является общим требованием к корпоративному приложению, и создание пула соединений для каждой базы данных на сервере базы данных не рекомендуется. поэтому вместо этого мы можем создать пул соединений с сервером базы данных и переключиться между базами данных, размещенными на сервере базы данных по требованию.

Предположим, что наше приложение имеет разные базы данных для каждой фирмы, размещенной на сервере базы данных. Мы подключаемся к соответствующей базе данных фирмы, когда пользователь обращается к приложению. вот пример того, как это сделать: -

var pool  = mysql.createPool({
      connectionLimit : 10,
      host            : 'example.org',
      user            : 'bobby',
      password        : 'pass'
    });
    
pool.getConnection(function(err, connection){
    if(err){
        return cb(err);
    }
    connection.changeUser({database : "firm1"});
    connection.query("SELECT * from history", function(err, data){
        connection.release();
        cb(err, data);
    });
});

Позвольте мне разбить пример:

При определении конфигурации пула я не дал имя базы данных, но дал только сервер базы данных, т. Е.

{
  connectionLimit : 10,
  host            : 'example.org',
  user            : 'bobby',
  password        : 'pass'
}

поэтому, когда мы хотим использовать конкретную базу данных на сервере базы данных, мы запрашиваем подключение к базе данных, используя: -

    connection.changeUser({database : "firm1"});

вы можете сослаться на официальную документацию здесь



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow