Описать проблему ↗

Сбои и доступность

Ошибка подключения к базе данных: доступы или отказ сервера

Сайт не подключается к базе данных. Разберём, как отличить неверные настройки от остановленной базы и почему создание новой пустой базы не решает проблему.

Редакция «починимсайт» · Обновлено · 3 мин. чтения

Что происходит и с чего начать

База может существовать и содержать все данные, даже когда сайт пишет об ошибке подключения. Причина бывает в адресе сервера, учётной записи, правах или доступности самой службы. Поэтому сообщение не означает автоматически потерю заказов и каталога. Начните с времени отказа и последних изменений: перенос, смена пароля, обновление окружения. До диагностики не переустанавливайте приложение и не создавайте пустые таблицы вместо существующих: сначала нужно понять, к какой базе оно пытается обратиться.

Что можно проверить самостоятельно

  1. Запишите точный текст ошибки без пароля и других секретов. Сообщите время, затронутые страницы и то, работает ли доступ к базе из панели хостинга.
  2. Уточните последние изменения: перенос, новый пользователь базы, смена пароля или имени. Проверьте, не осталась ли часть сайта подключённой к старому окружению.
  3. Посмотрите сообщения хостинга о состоянии базы, лимитах и свободном месте. Не удаляйте таблицы или файлы базы ради освобождения места без понимания их назначения.

Как понять результаты проверки

Разработчик проверяет подключение из того же окружения, где выполняется сайт. Доступ через административную панель может использовать другую учётную запись и не подтверждает исправность настроек приложения. Также сравнивают способ подключения: сетевой адрес и локальный сокет могут вести себя по-разному. Если проблема периодическая, полезны сведения о числе соединений и нагрузке. Одна удачная попытка после перезапуска не объясняет, почему доступ пропадал и не вернётся ли отказ при следующем пике.

Что проверяет разработчик

Для этой части понадобятся доступ к настройкам, журналам ошибок или коду. Её можно передать специалисту вместе с результатами предыдущих шагов.

  1. Сравните настройки подключения приложения с действующим окружением: хост, порт, база и пользователь. После переезда localhost может указывать уже не туда.
  2. Проверьте соединение от имени и из окружения приложения. Сетевой отказ, неверный пароль и исчерпанный лимит подключений — разные сценарии.
  3. Посмотрите состояние базы, свободное место и журналы службы. Если сбой периодический, сопоставьте его с пиком соединений и перезапусками.

На что обратить внимание

Рабочий доступ из консоли администратора не доказывает доступ для сайта. У пользователя приложения могут быть другие права, а контейнер или сервер PHP — другой сетевой маршрут.

Как исправляют причину

Исправьте только подтверждённый параметр или состояние службы. Сохраните принцип минимальных прав. Не запускайте восстановление таблиц наугад: ошибка подключения сама по себе не говорит о повреждении данных.

Как убедиться, что проблема решена

Проверьте чтение страницы и безопасную тестовую запись. После восстановления сравните число подключений и повторите сценарий, который приводил к отказу.

После восстановления проверьте чтение каталога и сохранение новой тестовой записи. Убедитесь, что сайт использует нужную рабочую базу, а не старую копию с похожими данными. Если были незавершённые операции, их состояние сверяется отдельно. Попросите зафиксировать причину и способ наблюдения: регулярная смена доступов или перезапуск базы не должны становиться единственным способом поддерживать сайт доступным.