Ошибки · Решение
SQLite SQLITE_CANTOPEN (14): не удаётся открыть файл базы
Причина часто в path/permissions, но extended code позволяет отделить directory/symlink/fullpath сценарии.
Короткий ответ
SQLITE_CANTOPEN (14) означает, что SQLite не смог открыть основной database file или связанный файл, необходимый работе.
Что означает ошибка
Причина часто в path/permissions, но extended code позволяет отделить directory/symlink/fullpath сценарии.
Возможные причины
- Путь к базе неверен или родительская директория отсутствует.
- Service account не имеет доступа к файлу/директории.
- URI/VFS policy запрещает symlink или не может разрешить полный путь.
Что проверить
- Проверьте абсолютный путь, рабочую директорию и существование parent directories.
- Проверьте ownership/permissions от имени реального service user.
- Считайте extended result code SQLITE_CANTOPEN_* для уточнения причины.
Безопасные шаги
- Исправьте path/configuration и права минимально необходимым образом.
- Создайте directory заранее, если приложение не должно делать это само.
- Не переносите db-файл во время открытых connections.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- Если CANTOPEN появляется только после deploy/container restart, сравните mount paths и service user нового окружения.
Похожие ошибки
- /errors/sqlite-busy-5/
- /errors/sqlite-locked-6/
- /errors/sqlite-readonly-8/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.