Wie kann ich Tabellengrößen in Schema (Oracle) schätzen?


11

Ich versuche, die Tabellengrößen in meinem Schema (in MB) zu schätzen. Das habe ich bisher:

SELECT table_name, owner, last_analyzed
FROM all_tables

Ich bin ziemlich neu in SQL, daher habe ich keine Ahnung, wie ich das machen würde.

Vielen Dank.

Antworten:


10

Schauen Sie sich die Ansicht "dba_segments" an (oder user_segments, wenn Sie keine dba-Rechte haben). Die folgende Abfrage sollte Ihnen das geben, wonach Sie suchen:

select
  owner as "Schema"
  , segment_name as "Object Name"
  , segment_type as "Object Type"
  , round(bytes/1024/1024,2) as "Object Size (Mb)"
  , tablespace_name as "Tablespace"
from dba_segments
order by owner;

Hallo Benoit, es hat perfekt funktioniert, danke. Ich habe mir die Tabellenfelder angesehen, die ich verwenden könnte, aber ich konnte keine "Eigentümer" - oder zuletzt aktualisierten Felder finden. Übrigens habe ich die Ansicht user_segments verwendet. Würden diese Informationen unter dba_segments verfügbar sein?
Diego R

Alle in user_segments angezeigten Segmente gehören dem Konto, mit dem Sie sich angemeldet haben. Aus diesem Grund gibt es keine Besitzerspalte.
Benoit
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.