首先,我想说,我不是数据库专家,也没有使用 heroku 服务的经验。
我想将一个 play 框架应用程序部署到 heroku 服务。我需要一个数据库来这样做。所以我用这个命令创建了一个 postgresql 数据库,因为 heroku 支持它:
Users-MacBook-Air:~ user$ heroku addons:create heroku-postgresql -a name_of_app
我得到了这个作为回应
Creating heroku-postgresql on ⬢ benchmarkingsoccerclubs... free
Database has been created and is available
! This database is empty. If upgrading, you can transfer
! data from another database with pg:copy
所以数据库现在已经存在,但当然是空的。为了开发,我使用了本地 H2 数据库。
现在我想使用 sql 文件在 heroku 上填充数据库,因为它有很多数据。但我找不到该怎么做。是否有 heroku CLI 的命令,我可以在其中将 sql 文件作为参数移交并填充数据库?该文件基本上由一些创建的表和大约 10000 个插入命令组成。
编辑:我还有来自所有表格的 CSV 文件。因此,如果有一种方法可以用这些填充 Postgres 数据库,那也很棒
最佳答案
首先,运行以下命令获取数据库的名称
heroku pg:info --app <name_of_app>
在输出中,记下“Add-on”的值,它应该看起来像这样:
Add-on: postgresql-angular-12345
然后,发出以下命令:
heroku pg:psql <Add-on> --app <name_of_app> < my_sql_file.sql
例如(假设您的 sql 命令在文件 test.sql 中):
heroku pg:psql postgresql-angular-12345 --app my_cool_app < test.sql
关于database - 如何使用 sql 文件填充 heroku postgresql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48180282/