我一直在从事一个需要在Heroku中进行设置的项目。到目前为止,我在本地使用的数据库是mySQL,但是当项目在Heroku上时,我希望使用Postgre。
我已经进行了大量搜索,但是还没有找到有关如何配置Laravel项目以使用Postgres以及如何执行基本功能(例如向Postgres添加新数据库)的答案。
如果有一种替代方法可以像这样直接使用mySQL,那就太好了。
感谢您的帮助。
答案 0 :(得分:1)
Heroku(一旦您配置了Heroku Postgres实例)就将数据库凭据以以下格式放置在DATABASE_URL
环境变量中:
postgres://username:password@hostname:port/database
现在,您可以手动填写DB_HOST
,DB_USERNAME
等。.env
变量,但这是一个更好的方法:您可以在{{1 }}文件。
config/database.php
(确保将'pgsql' => [
'driver' => 'pgsql',
'host' => parse_url(env('DATABASE_URL'), PHP_URL_HOST),
'port' => parse_url(env('DATABASE_URL'), PHP_URL_PORT),
'database' => ltrim(parse_url(env('DATABASE_URL'), PHP_URL_PATH), '/'),
'username' => parse_url(env('DATABASE_URL'), PHP_URL_USER),
'password' => parse_url(env('DATABASE_URL'), PHP_URL_PASS),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
'sslmode' => 'prefer',
],
设置为DB_CONNECTION
,以便使用此连接!)
如何执行基本功能,例如向Postgres添加新数据库
你不知道。一个Heroku Postgres实例带有一个数据库。