Подход 2 быстрее, но, чтобы избежать потенциальной проблемы разрыва соединения без неожиданного, вам нужно будет внедрить механизм тестирования для каждого сегмента, который запрашивает базу данных (например, подсчитать количество возвращаемых строк).
Чтобы продолжить этот подход, вы можете определить банк соединений или пул. Где вы можете заниматься тестированием и дистрибуцией соединений. Основная идея c состоит в том, чтобы иметь много соединений с базой данных и просто внедрять здоровые соединения с потребителями (функциями или объектами, которые запрашивают базу данных). Как упоминает Эндрю в комментариях, вы можете проверить этот вопрос: node.js + mysql пул соединений
Поскольку база данных является важным активом проекта, если это не домашняя работа или учебный проект, это может быть неплохой идеей для изучения сторонних библиотек, в которых большая часть подключений и деталей безопасности скрыта и автоматизирована.