Из .env возьми DATABASE_URL и зайди так:
cd /root/FairLabQueueBot
source .env
psql "$DATABASE_URL"Если source .env не подхватит (из-за формата), можно явно:
psql "postgresql://fairlab:9bef10a421eb40595b47a0b9ad1a1c45@127.0.0.1:5432/fairlab_queue"(для psql обычно формат postgresql://...; если с +psycopg2 не примет, просто убери +psycopg2).
Внутри psql:
\l
\dt
\d users
\d chats
\d queue
\d queue_history
\d payments
\d swap_requests
\d presence_pollsSELECT tg_id, tg_username, real_name, updated_at
FROM users
ORDER BY updated_at DESC
LIMIT 20;SELECT chat_id, title, subscription_tier, trial_ends_at, subscription_ends_at, created_at
FROM chats
ORDER BY created_at DESC
LIMIT 20;SELECT id, chat_id, subject_id, message_id, lesson_date, close_at, status, created_at
FROM queue
ORDER BY created_at DESC
LIMIT 30;SELECT tg_id, subject_id, history_position, missed_attempts_count
FROM queue_history
ORDER BY id DESC
LIMIT 30;SELECT yookassa_payment_id, chat_id, tier, amount_rub, status, created_at
FROM payments
ORDER BY created_at DESC
LIMIT 30;SELECT id, chat_id, queue_message_id, from_tg_id, to_tg_id, status
FROM swap_requests
ORDER BY id DESC
LIMIT 30;Перед запросами включи:
\x on
\pset pager off\x on— вертикальный вид записей (удобно для JSON полей).\pset pager off— безless.
Например, группы чата и extra у очереди:
SELECT chat_id, jsonb_pretty(groups::jsonb)
FROM chats
WHERE groups IS NOT NULL
LIMIT 10;SELECT id, jsonb_pretty(extra::jsonb)
FROM queue
WHERE extra IS NOT NULL
ORDER BY id DESC
LIMIT 10;