Heroku抛出SQLITE3只读异常

时间:2010-06-18 16:15:06

标签: windows deployment sqlite heroku

将应用程序部署到Heroku后,我运行迁移脚本并收到此错误消息

...ites\padrino\prophetmargin> heroku rake ar:migrate
rake aborted!
SQLite3::ReadOnlyException: attempt to write a readonly database: CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL)
/disk1/home/slugs/215264_925fd2c_65a3/mnt/.bundle/gems/gems/padrino-core-0.9.11/lib/padrino-core/cli/rake.rb:9:in `init'

这怎么可能?我也试过运行heroku dbpush sqlite://db/my-db.db,但也没用。

1 个答案:

答案 0 :(得分:0)

heroku不使用sqlite3而是使用postgres。我不知道你为什么会得到这个错误,因为我在开发中使用sqlite3并且在推送到heroku时他们会做一些魔法移植到postgres。

我不确定Heroku是如何做这个db后端'swap'的,但看起来它并没有发生在你身上,因为它试图写出sqlite db文件,由于Heroku的只读文件系统,它明显失败。 / p>

很抱歉这不是一个很好的答案,你可能已经知道这一切,但如果你是heroku的新手,它可能会给你一些见解?

嗯...刚才注意到...... ar:migrate命令是什么?我没有运行Heroku几个月一直在变化,但通常你想要一个heroku rake db:migrate