### Техническое задание: Миграция с SQLite на PostgreSQL
#### Цель:
Обеспечить стабильную параллельную работу 3-х одновременных скриптов, исключив конфликты при одновременном доступе к базе данных, путем перехода с SQLite на PostgreSQL.
### 1. Развертывание PostgreSQL
- Установить PostgreSQL (версия 13 и выше).
- Настроить:
- Пользователя и пароль.
- Базу данных.
- Права доступа.
- Подключение через localhost или по нужному адресу (если требуется).
- (Опционально) Настроить pgAdmin или аналогичный инструмент администрирования.
### 2. Миграция схемы и данных
- Перенести схему базы данных с SQLite в PostgreSQL.
- Таблицы, индексы, ограничения.
- Преобразовать типы данных при необходимости (например, integer primary KEY → serial primary KEY).
- Перенести данные (если уже имеются) средствами экспорта/импорта.
### 3. Переписывание скриптов (до 2000 строк)
- Найти и переписать все участки кода, где используется SQLite (sqlite3, connection, cursor и т.п.).
- Заменить на использование PostgreSQL:
- Через psycopg2, asyncpg, SQLAlchemy или другой подходящий драйвер.
- Обновить логику подключения, транзакций и обработки ошибок.
- Убедиться в совместимости всех SQL-запросов с PostgreSQL.
- Внедрить безопасный пул соединений (например, psycopg2.pool или SQLAlchemy engine с pool).