【发布时间】:2011-05-12 08:06:26
【问题描述】:
在 Heroku 中找出我的共享数据库当前大小的最快方法是什么?
【问题讨论】:
-
他们做到了!我希望这是一个错误,而不是新的刻意练习。
标签: ruby-on-rails postgresql heroku
在 Heroku 中找出我的共享数据库当前大小的最快方法是什么?
【问题讨论】:
标签: ruby-on-rails postgresql heroku
运行heroku info 显示:
Data size: 480k
Addons: Basic Logging, Shared Database 5MB
数据大小为共享数据库的大小,这里限制为5MB。
【讨论】:
Data size:行和数据库的实际大小
来自 nate c 发布的同一文档页面:
heroku pg:info
这似乎只在您不使用共享数据库,而是使用 PG 作为附加组件时才有效
另外,请确保您的 heroku gem 是最新的:
sudo gem update heroku
关于如何查看共享数据库大小的任何想法?我只是做了一个 heroku db:pull 然后 mysqldump 并查看了文件大小,认为这是一个很好的粗略估计。
【讨论】:
heroku info 命令返回的信息相同。
新的方式好像是:
heroku pg:info -a myapp
你会看到类似的东西:
=== HEROKU_POSTGRESQL_PURPLE_URL (DATABASE_URL)
Plan: Dev
Status: available
Connections: 1
PG Version: 9.1.5
Created: 2012-10-19 01:27 UTC
Data Size: 12.1 MB
Tables: 31
Rows: 36068/10000 (Above limits, access disruption imminent)
Fork/Follow: Unavailable
【讨论】:
根据 Nate 的回答:
对于共享数据库,无需在本地计算机上安装 Postgres
heroku console
ActiveRecord::Base.connection.execute("SELECT pg_size_pretty(pg_database_size('postgres'))").first
'postgres' 是我的共享数据库的名称,当我输入 template0 或 template1 时,我会得到相同的数字。
【讨论】:
您可以直接登录到 Posgtgresql。
输入heroku pg:psql。
但你的本地系统上也必须有 postgres,这样你才能使用pgsql(这是 pg 的命令行界面)
如果您不知道数据库名称是什么,则键入\l in pgsql 以列出数据库。 (postgres、template0 和 template1 在每次安装时都是系统数据库。)
然后
SELECT pg_size_pretty(pg_database_size('dbname'));
【讨论】:
在 heroku postgres 面板中,您可以看到所有内容 https://postgres.heroku.com/
【讨论】: