Postgresql 尝试使用OSX雪豹在Heroku上启动psql时出现分段错误(10.6.8)
我正在尝试将Postgresql与Heroku一起使用。我使用从下载的安装程序安装了Postgres 9.1.4。然后在我的Postgresql 尝试使用OSX雪豹在Heroku上启动psql时出现分段错误(10.6.8),postgresql,heroku,Postgresql,Heroku,我正在尝试将Postgresql与Heroku一起使用。我使用从下载的安装程序安装了Postgres 9.1.4。然后在我的/etc/profile中,我将psql的位置添加到我的路径中。当我尝试将psqlshell与Heroku一起使用时,我得到了一个分段错误,但当我尝试在本地使用它时,它似乎工作正常: [Sun Aug 05 20:17:47] : which psql /Library/PostgreSQL/9.1/bin/psql [Sun Aug 05 20:22:15] : hero
/etc/profile
中,我将psql
的位置添加到我的路径中。当我尝试将psql
shell与Heroku一起使用时,我得到了一个分段错误,但当我尝试在本地使用它时,它似乎工作正常:
[Sun Aug 05 20:17:47] : which psql
/Library/PostgreSQL/9.1/bin/psql
[Sun Aug 05 20:22:15] : heroku pg:psql
psql (9.1.4)
Segmentation fault
[Sun Aug 05 20:22:21] : psql -U postgres
Password for user postgres:
psql (9.1.4)
Type "help" for help.
postgres=# \q
[Sun Aug 05 20:22:29] : heroku version
heroku-toolbelt/2.30.2 (universal-darwin10.0) ruby/1.8.7
我确实注意到heroku版本显示了ruby/1.8.7,但我使用的是rvm use 1.9.3。这个Ruby不匹配可能是问题所在吗?如果是,我如何修复它?我不确定下一步该怎么办,因为分段错误消息非常模糊。这些都在Mac OS X 10.6.8上。我联系了Heroku支持部门,他们建议通过自制软件安装Postgres(http://mxcl.github.com/homebrew/). 我这样做了,现在我可以访问我的Heroku数据库。我联系了Heroku支持部门,他们建议通过自制软件安装Postgres(http://mxcl.github.com/homebrew/). 我这样做了,现在我可以访问我的Heroku数据库。我也有这个问题:psql
在本地工作,但是segfaults与Heroku pg:psql
。我发现降级到Postgres 9.1.3()解决了这个问题
看起来,heroku pg:psql
命令只是使用适当的命令行参数调用psql
,并以某种方式传入密码。我可以在不使用heroku命令的情况下重现问题,如下所示:
psql -U random_username -h ec2-10-10-10-10.compute-1.amazonaws.com -p 5432 random_dbname
Password for user random_username:
psql (9.1.4)
Segmentation fault
因此,问题似乎存在于psql
二进制文件中。我查看了核心转储的堆栈跟踪,似乎问题出在SSL处理中(Heroku使用SSL处理,但通常不用于连接到localhost):
这是有意义的,因为成功的psql
到Heroku的连接确实会给出一行关于SSL密码连接的信息:
heroku pg:psql --app wattdepot-kukuicup-uhm-staging
psql (9.1.3, server 9.1.4)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.
random_dbname=>
除此之外,我还没有进一步的调查。我也有这个问题:
psql
在本地工作,但是segfaults与heroku pg:psql
。我发现降级到Postgres 9.1.3()解决了这个问题
看起来,heroku pg:psql命令只是使用适当的命令行参数调用psql
,并以某种方式传入密码。我可以在不使用heroku命令的情况下重现问题,如下所示:
psql -U random_username -h ec2-10-10-10-10.compute-1.amazonaws.com -p 5432 random_dbname
Password for user random_username:
psql (9.1.4)
Segmentation fault
因此,问题似乎存在于psql
二进制文件中。我查看了核心转储的堆栈跟踪,似乎问题出在SSL处理中(Heroku使用SSL处理,但通常不用于连接到localhost):
这是有意义的,因为成功的psql
到Heroku的连接确实会给出一行关于SSL密码连接的信息:
heroku pg:psql --app wattdepot-kukuicup-uhm-staging
psql (9.1.3, server 9.1.4)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.
random_dbname=>
除此之外,我还没有做进一步的调查。我遇到了完全相同的问题。根据Heroku的建议,我刚从postgres 9.1.4更新到9.1.5,现在“Heroku pg:psql”运行良好。我遇到了完全相同的问题。根据Heroku的建议,我刚刚从postgres 9.1.4更新到9.1.5,现在“Heroku pg:psql”运行良好。我们肯定只是按照前面提到的参数使用psql命令,所以我并不认为Heroku方面真的出了什么问题。似乎psql中有一个bug已经被修复,所以我认为更新本地postgres应该可以解决这个问题(到目前为止,它似乎已经为我谈论过的每个人修复了一些问题。我们肯定只是按照前面提到的带有参数的psql命令,所以我并不认为Heroku方面真的出了什么问题。似乎psql中有一个bug显然已经修复,所以我想更新您的本地postgres可能应该做到这一点(到目前为止,它似乎已经为我谈论过的每个人解决了问题。我认为这些问题就是Heroku推出Postgres.app-@Qsario的原因,谢谢你的提示。不幸的是,Postgres.app似乎需要Lion(10.7)所以我不能在我的机器上尝试它,因为我还在玩雪豹(10.6.8)。我想这些问题就是为什么Heroku推出了Postgres.app-@Qsario,谢谢你的提示。不幸的是,Postgres.app似乎需要Lion(10.7),所以我不能在我的机器上尝试,因为我还在玩雪豹(10.6.8)。