Commande 3 couramment utilisée par Oracle: réduction des fichiers de données

Informations d'arrière-plan

L'espace disque de la bibliothèque locale est déjà très restreint, et j'ai récemment effectué une migration de données de la bibliothèque locale vers la bibliothèque historique. De nombreuses données ont été désinstallées dans cette bibliothèque, mais l'espace disque n'a pas été libéré, ce qui affectera certains risques. Nous devons le réduire grâce à des commandes.

Commande d'opération

SELECT
    'alter database datafile '''
    || t1.file_name
    || ''' resize '
    || ceil((nvl(hwm, 1) * &&blksize) / 1024 / 1024)
    || 'M;' resize_cmd
FROM
    dba_data_files t1,
    (
        SELECT
            file_id,
            MAX(block_id + blocks - 1) hwm
        FROM
            dba_extents
        GROUP BY
            file_id
    ) t2
WHERE
    t1.file_id = t2.file_id (+)
AND
    ceil(blocks * &&blksize / 1024 / 1024) - ceil((nvl(hwm, 1) * &&blksize) / 1024 / 1024) > 0;

BLKSIZE est généralement 8192.

Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/weixin_38623994/article/details/108794399
conseillé
Classement