我正在起诉Heroku dev计划使用 PostgreSQL 创建数据库。数据库是在Heroku中创建的。运行heroku pg:info命令后
$ heroku pg:info
=== HEROKU_POSTGRESQL_XXX_URL
Plan: Hobby-dev
Status: available
Connections: 1
PG Version: 9.3.1
Created: 2013-11-27 04:00 UTC
Data Size: 6.4 MB
Tables: 0
Rows: 0/10000 (In compliance)
Fork/Follow: Unsupported
Rollback: Unsupported
结果显示零表,这是正确的。
在我的本地机器表中,使用 Laravel4 框架支持的以下命令创建。
php artisan migrate
php artisan db:seed
但似乎我无法在heroku中运行此命令来创建表和转储数据。请告诉我如何在Heroku中创建本地数据库的副本。
全部谢谢
答案 0 :(得分:43)
使用您刚刚运行的新official php build pack
$ heroku run bash
$ php artisan migrate
或只是
$ heroku run php artisan migrate
如果您希望每次通过git进行部署时都要进行迁移,请在"php artisan migrate"
的{{1}}部分中将"post-update-cmd"
添加到composer.json。
答案 1 :(得分:11)
需要一点挖掘,但我可以通过运行此命令来使用它:
heroku run /app/php/bin/php /app/www/artisan migrate
所以我学到的经验是:用heroku run /app/php/bin/php /app/www/artisan
答案 2 :(得分:4)
此行可让您访问所有laravel工匠命令:
heroku run php artisan
答案 3 :(得分:2)
这是一个complete example,它将解决"没有任何迁移问题"为Heroku而来,
heroku run php artisan migrate --path=database/migrations --app application-name
application-name是您的Heroku APP名称
答案 4 :(得分:0)
我建议将迁移作为构建过程的一部分运行。应该如此。 看看https://github.com/lifekent/heroku-buildpack-laravel。 官方构建包,易于使用,支持运行工匠命令
答案 5 :(得分:0)
如果heroku服务器上有多个应用程序,则可以执行以下操作:
const
这将为该特定应用程序打开一个bash容器,您可以在该容器中运行任何命令。即
heroku run bash -a application-name
显然,首先需要确保您已经登录到heroku cli。