mea*_*a36 33 database postgresql heroku
标题几乎总结了我的问题,但这里有更多细节:
我正在运行一个脚本来将行导入到heroku数据库中.我开始收到错误:
<class 'django.db.utils.DatabaseError'> current transaction is aborted, commands ignored until end of transaction block`
Run Code Online (Sandbox Code Playgroud)
脚本在我的本地主机上运行顺畅,所以我不会在那里寻找问题.我最近收到一封来自heroku的电子邮件,声称我"正在接近开发数据库的行限制"
我假设我达到了行限制,但我想在采取进一步行动之前确认这一点.
有谁知道如何找到整个数据库的当前行数?(我知道我可以只对每张桌子进行统计,但我希望有一种更清洁的方式)
Gre*_*egB 71
如果你有heroku cli工具,这将为你提供数据库中的行数等
heroku pg:info -a your_app
Run Code Online (Sandbox Code Playgroud)
还给出了您的计划类型,数据库状态,当前连接数,postgres版本,创建数据库的时间,计划中的行数,数据大小,表的数量以及数据库是否具有任何分支/按照选项激活.
Cra*_*ens 21
这将为您提供数据库中所有行的大致计数:
SELECT sum(reltuples) from pg_class where relname IN (SELECT c.relname
FROM pg_catalog.pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind = 'r'
AND n.nspname <> 'pg_catalog'
AND n.nspname <> 'information_schema'
AND n.nspname !~ '^pg_toast'
AND pg_catalog.pg_table_is_visible(c.oid));
Run Code Online (Sandbox Code Playgroud)
虽然错误消息表明您的数据库有一些错误,但可能是违反约束的行为与撤销插入权限的行为相关.
Heroku 发布了一个“pg-extras”工具带,它可以为您提供额外的信息,例如数据库的行数。
即使您有比 Hobby 更高的计划,您也可以通过执行以下操作获得行数:
heroku plugins:install heroku-pg-extras
Run Code Online (Sandbox Code Playgroud)
然后:
heroku pg:index_usage --app dashboard
Run Code Online (Sandbox Code Playgroud)
这将为您提供每个表的行数。
归档时间: |
|
查看次数: |
10965 次 |
最近记录: |