【发布时间】:2012-09-08 04:00:54
【问题描述】:
我正在尝试从 sqlite3 切换到 PostgreSQL 以在 Rails 中进行开发,这样我就不会遇到任何 heroku 问题。我遵循了关于 heroku 和链接到 Railscast 的建议,但是在 brew 安装 postgresql 后遇到了以下错误。
在 /usr/local/var/postgres/base/1 中创建 template1 数据库 ...
致命:无法创建共享内存段:无法分配内存
详细信息:失败的系统调用是 shmget(key=1, size=2072576, 03600)。
提示:这个错误通常意味着 PostgreSQL 对共享内存段的请求超出了可用内存或交换空间,或者 超出了内核的 SHMALL 参数。您可以减少 请求大小或使用更大的 SHMALL 重新配置内核。减少 请求大小(目前为 2072576 字节),减少 PostgreSQL 的共享 内存使用,可能通过减少 shared_buffers 或 max_connections。
我已经浏览了一些文档,但我是新手,对内存和数据库如何工作知之甚少,我认为这里的某个人可能能够更好地为我指明正确的方向比我自己能找到的。知道如何解决这个问题吗?我的电脑是新的而且比较花哨,如果它内存不足,我会感到惊讶,所以我不知道减少“共享内存使用”是否是正确的想法(如果我完全了解发生了什么) .
编辑:应该早点提出来。这是导致错误的命令(构建数据库):
initdb /usr/local/var/postgres -E utf8
【问题讨论】:
-
试试 Postgres.app。我已经使用它几个月了。完美运行。
标签: ruby-on-rails postgresql memory-management heroku