sqlite3 - не могу открыть файл базы данных - PullRequest
1 голос
/ 20 января 2012

В качестве фона я пытаюсь перенести свою локальную базу данных sqlite3 в базу данных postgresql на Heroku.

У меня нет проблем с локальным доступом к базе данных через мой (Django) сервер разработки.Однако, когда я пытаюсь передать базу данных в Heroku, он говорит, что не может открыть файл.

heroku db:push sqlite://path/to/db --confirm my-app-name

Я получаю следующее сообщение:

Loaded Taps v0.3.23
Warning: Data in the app 'my-app-name' will be overwritten and will not be recoverable.
Failed to connect to database:
      Sequel::DatabaseConnectionError -> SQLite3::CantOpenException: could not open database: unable to open database file

Почти все, что я 'Я видел в Google, относится к некоторым ошибкам в более ранних версиях Tap.В противном случае, я не уверен, что мне следует делать здесь.

Я пытался следовать совету этого вопроса и других по поводу разрешений, но у меня есть полный доступ на чтение и запись к файлу и к папке с ним.Я не слишком опытен с разрешениями - нужно ли переключать владение БД другому пользователю?

Ответы [ 2 ]

1 голос
/ 21 января 2012

Если / path / to / database является абсолютным путем, вам нужно сделать:

heroku db:push sqlite:///path/to/db --confirm my-app-name

Обратите внимание на третий слеш. Это также может быть проблема с разрешениями, в этом случае вы хотите либо сменить владельца на текущего пользователя, либо предоставить как минимум разрешение на чтение для базы данных (644).

0 голосов
/ 20 января 2012

Я бы попытался сохранить данные из sqlite3 в прибор через dumpdata, а затем, после переключения на postgres, снова загрузить их через loaddata.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...