В файле, которым ты запускаешь бота, типа main.py в главной функции открываешь пул и передает конект боту:
# Создаем пул соединений
pool = await asyncpg.create_pool(
user=db_user,
password=db_password,
database=db_name,
host=db_host,
port=db_port
)
dp.bot['db_pool'] = pool
spoilerЭто работает только с Aiogram 2, на 3 версии изменилась типизация, поэтому надо делать через наследование.
Далее в функции, в которой тебе нужно подрубить к БД прописываешь
pool = message.bot['db_pool']
# Получаешь пул из объекта бота