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.