La hacky, risposta pratica per chi cerca di valutare quali Heroku piano di cui hanno bisogno e non può attendere per il contatore lenta fila di Heroku per rinfrescare:
Fondamentalmente si desidera eseguire \dt
in psql
, copiare i risultati al vostro editor di testo preferito (che sarà simile a questa:
public | auth_group | table | axrsosvelhutvw
public | auth_group_permissions | table | axrsosvelhutvw
public | auth_permission | table | axrsosvelhutvw
public | auth_user | table | axrsosvelhutvw
public | auth_user_groups | table | axrsosvelhutvw
public | auth_user_user_permissions | table | axrsosvelhutvw
public | background_task | table | axrsosvelhutvw
public | django_admin_log | table | axrsosvelhutvw
public | django_content_type | table | axrsosvelhutvw
public | django_migrations | table | axrsosvelhutvw
public | django_session | table | axrsosvelhutvw
public | exercises_assignment | table | axrsosvelhutvw
), quindi eseguire una ricerca regex e sostituire in questo modo:
^[^|]*\|\s+([^|]*?)\s+\| table \|.*$
a:
select '\1', count(*) from \1 union/g
che produrrà qualcosa di molto simile a questo:
select 'auth_group', count(*) from auth_group union
select 'auth_group_permissions', count(*) from auth_group_permissions union
select 'auth_permission', count(*) from auth_permission union
select 'auth_user', count(*) from auth_user union
select 'auth_user_groups', count(*) from auth_user_groups union
select 'auth_user_user_permissions', count(*) from auth_user_user_permissions union
select 'background_task', count(*) from background_task union
select 'django_admin_log', count(*) from django_admin_log union
select 'django_content_type', count(*) from django_content_type union
select 'django_migrations', count(*) from django_migrations union
select 'django_session', count(*) from django_session
;
(Avrete necessario rimuovere il union
e aggiungere la virgola alla fine manualmente)
Ru n it in psql
e il gioco è fatto.
?column? | count
--------------------------------+-------
auth_group_permissions | 0
auth_user_user_permissions | 0
django_session | 1306
django_content_type | 17
auth_user_groups | 162
django_admin_log | 9106
django_migrations | 19
[..]
Ho provato ad utilizzare questo, ma i dati di molto stantio davvero. – mlissner
@mlissner: se l'intervallo autovacuum è troppo lungo o non hanno eseguito un manuale 'ANALYZE' sul tavolo, le statistiche possono ottenere fuori strada. La sua una questione di caricamento del database e come il database è configurato (se le statistiche vengono aggiornate con maggiore frequenza, le statistiche saranno più accurate, ma potrebbe ridurre le prestazioni di esecuzione). In definitiva, l'unico modo per ottenere dati accurati è eseguire 'select count (*) dalla tabella' per tutte le tabelle. – ig0774
appena provato e NON è la risposta giusta. –