Когда я запускаю сервер, я подключаюсь к бд как админ
Может я чего-то не понял, но где связь между запуском бд и подключением к ней, postgres же примерно так запускается sudo service postgresql start, а подключение уже идёт отдельно.
Как это сделать(сменить подключение)?
Закрыть текущее и открыть новое, например считать данные из конфига и по ним сделать новое подключение, конкретнее сказать сложно, т.к. не знаю структуру вашего проекта.
подключаться под нужной ролью?
В целом можно сделать соединения(пулы) с разными ролями в зависимости от прав пользователя.
(сменить подключение)?
Так конечно можно делать, но база может быстро упасть под нагрузкой, т.к. открытие/закрытие соединения довольно тяжелый процесс.