繁体   English   中英

sqlite3-无法打开数据库文件

[英]sqlite3 — can't open database file

对于背景,我正在尝试将sqlite3本地数据库迁移到Heroku上的postgresql数据库。

通过我的(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早期版本中的一些错误有关。 否则,我不确定该怎么做。

我已尝试遵循此问题以及其他有关权限的建议,但是我对文件和包含文件夹具有完全读写访问权限。 我对权限的使用不太熟悉-是否需要将数据库的所有权切换到另一个用户?

如果/ path / to / database是绝对路径,则需要执行以下操作:

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

注意第三个斜杠。 这也可能是一个权限问题,在这种情况下,您想要将所有者更改为当前用户,或者至少要授予数据库读取权限(644)。

我会尝试通过dumpdata将数据从sqlite3保存到固定装置,然后在切换到postgres之后,通过loaddata再次加载。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM