Heroku Laravel SQLite 丢失

San*_*mar -1 php heroku laravel

我正在使用 Heroku 部署 Laravel 应用程序。一切似乎都在工作,但我无法连接到我的 SQLite 数据库:

在此处输入图片说明

我试图通过运行安装 SQLite

heroku run apt-get install php7.0-sqlite
Run Code Online (Sandbox Code Playgroud)

但这不起作用:

在此处输入图片说明

然后我读了一篇文章,其中提到通过 安装 SQLite composer.json,所以我尝试了这个:

"require": {
    "php": ">=7.0.0",
    "fideloper/proxy": "~3.3",
    "laravel/framework": "5.5.*",
    "laravel/tinker": "~1.0",
    "ext-pdo_sqlite": "*"
},
Run Code Online (Sandbox Code Playgroud)

但是当我运行时composer update出现此错误:

在此处输入图片说明

谁能帮我解决这个问题?

Chr*_*ris 5

ext-pdo_sqlite通过 Composer要求的方法应该适用于 Heroku。你也更新composer.lock了吗?您必须在本地执行此操作,然后提交更改,然后再次提交git push到 Heroku。heroku run composer update由于 Heroku 的临时文件系统,运行将无法按预期工作。

由于这个文件系统,SQLite 通常不是 Heroku 上数据库的好选择。下次重新启动 dyno 时,您写入磁盘的任何内容都将丢失。这种情况经常发生

我强烈建议改为使用生产级客户端-服务器数据库。Heroku支持许多数据存储它自己的 PostgreSQL 产品通常是一个很好的起点。