Распространённые проблемы и их устранение
Добро пожаловать в руководство по устранению неполадок HarborDB. Этот всеобъемлющий ресурс поможет вам быстро определить и устранить наиболее распространённые проблемы, возникающие при работе с HarborDB и PostgreSQL. Независимо от того, сталкиваетесь ли вы с проблемами подключения, медленной производительностью или проблемами интерфейса, здесь вы найдёте пошаговые решения.
Как использовать это руководство
- Определите проблему из категорий ниже
- Следуйте шагам устранения неполадок по порядку
- Попробуйте решения до тех пор, пока проблема не будет устранена
- Если проблема не решена, используйте раздел "Обращение в службу поддержки"
Быстрая справка: распространённые проблемы
| Проблема | Вероятная причина | Быстрое решение | | ------------------------------ | ------------------------------------------ | ------------------------------------------ | | Не удаётся подключиться к PostgreSQL | Сервер не запущен, брандмауэр блокирует подключение | Запустите PostgreSQL, проверьте настройки брандмауэра | | Медленное выполнение запросов | Отсутствуют индексы, большие наборы данных | Добавьте индексы, используйте LIMIT, оптимизируйте запросы | | Высокое использование памяти | Слишком много открытых вкладок, большие наборы результатов | Закройте неиспользуемые вкладки, включите режим потоковой передачи | | Ошибки экспорта | Проблемы с правами доступа, диск заполнен | Проверьте права доступа к файлам, освободите место на диске | | Интерфейс работает медленно | Ограничения системных ресурсов | Закройте другие приложения, перезапустите HarborDB |
Проблемы подключения
"Не удаётся подключиться к серверу PostgreSQL"
Симптомы:
- Ошибки тайм-аута подключения
- Сообщения "Подключение отклонено"
- Бесконечная загрузка при тестировании подключения
Пошаговое устранение неполадок:
-
Проверьте статус сервера PostgreSQL:
# В терминале проверьте, запущен ли PostgreSQL pg_isready -h localhost -p 5432- Если не запущен:
brew services start postgresql(Homebrew) или запустите через Системные настройки
- Если не запущен:
-
Проверьте данные подключения:
- Имя хоста:
localhostдля локального подключения, правильный IP-адрес/имя хоста для удалённого - Порт: По умолчанию
5432, подтвердите порт вашего PostgreSQL - Имя базы данных: Должно существовать перед подключением
- Имя пользователя/пароль: Учитывается регистр, проверьте учётные данные
- Имя хоста:
-
Проверьте настройки брандмауэра:
- Системные настройки → Безопасность и конфиденциальность → Брандмауэр
- Убедитесь, что порт PostgreSQL (5432) разрешён
- Попробуйте временно отключить брандмауэр для тестирования
-
Проверьте сетевое подключение:
# Для удалённых серверов ping ваш-адрес-сервера telnet ваш-адрес-сервера 5432
Распространённые решения:
- ✅ Запустите службу PostgreSQL
- ✅ Исправьте имя хоста/IP-адрес
- ✅ Откройте порт брандмауэра 5432
- ✅ Используйте правильные учётные данные
"Сбой аутентификации по паролю"
Причины:
- Неправильное имя пользователя или пароль
- Несоответствие метода аутентификации PostgreSQL
- У пользователя нет прав доступа к базе данных
Решения:
-
Сбросьте пароль PostgreSQL:
-- Подключитесь как суперпользователь (через командную строку) ALTER USER имя_пользователя WITH PASSWORD 'новый_пароль'; -
Проверьте метод аутентификации:
- Просмотрите файл
pg_hba.conf - Распространённые методы:
md5,scram-sha-256,trust - При необходимости обновите метод и перезапустите PostgreSQL
- Просмотрите файл
-
Проверьте права пользователя:
-- Список пользователей и прав \du -- Список баз данных и доступа \l
Ошибки подключения SSL/TLS
При подключении к удалённым серверам:
-
Проверьте требования SSL:
- Сервер может требовать определённый режим SSL
- Может потребоваться импорт сертификата
-
Попробуйте разные режимы SSL в HarborDB:
- Начните с
prefer - Затем попробуйте
require - Наконец
verify-full(требуется сертификат)
- Начните с
-
Импортируйте сертификаты если используете
verify-full:- Получите сертификат у администратора сервера
- Импортируйте в Связку ключей macOS
- Предоставьте HarborDB доступ к сертификату
Проблемы производительности
Медленное выполнение запросов
Шаги диагностики:
- Используйте EXPLAIN для анализа:
- Нажмите кнопку "Explain" (⚡) в HarborDB
- Ищите "Seq Scan" (полное сканирование таблицы) — часто медленно
Обратная связь
Помогите нам улучшить документацию