22

我一直在将 heroku 用于我的一个应用程序,但由于行数已超过 10,000 行,它今天已关闭。

不过,我不明白这个数字是如何得出的,因为 rails 告诉我,我的数据库中只有大约 2000 条记录。

运行 pg:info,我看到以下内容:

Plan:        Dev
Status:      available
Connections: 1
PG Version:  9.1.5
Created:     2012-09-25 03:12 UTC
Data Size:   11.0 MB
Tables:      9
Rows:        15686/10000 (Write access revoked)
Fork/Follow: Unavailable

谁能向我解释,尽管数据库中只有 2,000 条记录,但我似乎有 15,000 行?

谢谢!

4

3 回答 3

44

仅有 Rails 是不够的。Heroku 有一个不错的 SQL 控制台,您可以通过以下方式访问:

heroku pg:psql YOUR_DB_URL

然后你可以编写这个查询来获得每个表的记录排名:

SELECT schemaname,relname,n_live_tup 
  FROM pg_stat_user_tables 
  ORDER BY n_live_tup DESC;

如果您只需要更新的数字。行数,您可以使用

SELECT sum(n_live_tup) FROM pg_stat_user_tables;

请注意,您可以在配置中同时拥有新的开发计划数据库和旧的共享数据库(通过 访问它heroku pg:info)。您必须插入正确的数据库 url,可能是带颜色的。

truncate在任何 sql和Rows要更新的计数之间允许 30 分钟的延迟。

顺便说一句,在我的情况下, http: //heroku.com 上的 Web 控制台已更新为正确的数字。在我的 sql 查询期间。可能是heroku toolbelt 控制台更新,比较慢。

于 2012-10-03T13:54:04.517 回答
1

我就此联系了 Heroku 支持,他们运行以下命令来获取我的号码...

$ heroku pg:info
于 2015-10-07T19:23:41.223 回答
0

30 分钟对我来说还不够,所以我进行了备份并恢复了数据库。然后我的应用重新上线。

于 2016-05-25T08:44:01.830 回答