Come calcolare la dimensione di un database in Oracle
Passaggio 1
Include le dimensioni dei file di dati nella ricerca. La dimensione totale include tabelle, campi, stored procedure e altri oggetti nel database. Calcola la dimensione della vista "dba_data_files" come segue:
SELECT SUM (byte) / 1024/1024/1024 data_size da dba_data_files;
Passaggio 2
Calcola la dimensione dei file temporanei. Questi memorizzano i dati durante l'elaborazione ma non sono permanenti. Calcola la dimensione del file temporaneo come segue:
seleziona nvl (sum (bytes), 0) / 1024/1024/1024 temp_size da dba_temp_files.
Passaggio 3
Ottieni la dimensione del registro di redo. Memorizza eventuali modifiche nel database prima di essere applicato ai dati del database corrente. Questo offre un modo per memorizzare il database al suo stato originale prima di un estratto progettato per modificare qualsiasi informazione.
seleziona sum (bytes) / 1024/1024/1024 redo_size da sys.v_ $ log.
Passaggio 4
Estrai la dimensione del file di controllo usato da Oracle usando la vista V $ CONTROLFILE. Questa vista viene utilizzata per ottenere informazioni sullo schema del database e sugli oggetti in esso contenuti.
L'estratto selezionato per ottenere la dimensione del file di controllo è:
seleziona sum (BLOCK_SIZE * FILE_SIZE_BLKS) / 1024/1024/1024 controlfile_size da v $ controlfile
Passaggio 5
Combina gli estratti selezionati per calcolare le dimensioni del database. Il risultato corrisponde alla dimensione totale del database in gigabyte:
selezionare d.data_sizeT.temp_sizeR.redo_sizeC.controlfile_size "Dimensione del database in GB" da (selezionare sum (bytes) / 1024/1024/1024 data_size da dba_data_files) d, (selezionare nvl (sum (bytes), 0) / 1024/1024 / 1024 temp_size da dba_temp_files) t, (selezionare sum (bytes) / 1024/1024/1024 redo_size da sys.v_ $ log) r, (selezionare sum (BLOCK_SIZE * FILE_SIZE_BLKS) / 1024/1024/1024 controlfile_size da v $ controlfile) c;
Questo presenterà la dimensione totale del database nel seguente formato:
Dimensione del database in GB
149, 58, 765 mila