Maison  >  Article  >  Opération et maintenance  >  Comment afficher l'espace table Oracle

Comment afficher l'espace table Oracle

PHPz
PHPzoriginal
2023-04-17 09:49:092560parcourir

Présentation

Dans la base de données Oracle, l'espace table est l'unité de base pour stocker les données. Lorsque l'utilisation de l'espace table est trop élevée, les performances et la disponibilité de la base de données seront affectées. Par conséquent, il est important de surveiller l’utilisation de l’espace table en temps opportun. Dans cet article, nous présenterons comment afficher les tablespaces d'Oracle.

  1. Afficher la taille et l'utilisation de l'espace table

Pour vérifier la taille et l'utilisation de l'espace table, vous pouvez utiliser la requête SQL suivante :

SELECT tablespace_name, sum(bytes) / 1024 / 1024 size_mb, sum(bytes) / 1024 / 1024 - sum(decode(autoextensible, 'YES', maxbytes, bytes))/ 1024 / 1024 used_mb, round((sum(bytes) / 1024 / 1024 - sum(decode(autoextensible, 'YES', maxbytes, bytes)))/ sum(bytes)* 100,2) used_pct
FROM dba_data_files
GROUP BY tablespace_name;

La sortie de la requête SQL ci-dessus affichera le nom de chaque espace table , taille totale, taille utilisée et utilisation.

  1. Affichez les objets occupant le plus grand espace dans chaque espace table

Pour afficher les objets occupant le plus grand espace dans chaque espace table, vous pouvez utiliser l'instruction de requête SQL suivante :

SELECT
    T.tablespace_name,
    TO_CHAR(SUM(NVL(T.bytes, 0)) / 1024/1024, '99,999,990.99') || ' MB' AS "Tablespace Size",
    TO_CHAR(SUM(NVL(F.bytes, 0)) / 1024/1024,'99,999,990.99') || ' MB' AS "File Size",
    TO_CHAR(SUM(NVL(T.bytes, 0)) - SUM(NVL(F.bytes, 0)) / 1024/1024,'99,999,990.99') || ' MB' AS "Used MB",
    ROUND((SUM(NVL(T.bytes, 0)) - SUM(NVL(F.bytes, 0))) * 100 / SUM(NVL(T.bytes, 0)),2) || '%' AS "Pct. Used"
FROM
    dba_tablespaces T,
    (SELECT tablespace_name,SUM(bytes) bytes FROM dba_data_files GROUP BY tablespace_name) F
WHERE
    T.tablespace_name = F.tablespace_name (+)
GROUP BY
    T.tablespace_name;

Les résultats de sortie de la requête SQL ci-dessus L'instruction sera affichée. Le nom, la taille totale, la taille du fichier, l'espace utilisé et l'utilisation de chaque espace de table.

  1. Affichez l'espace table et la taille de chaque fichier de données

Pour afficher l'espace table et la taille de chaque fichier de données, vous pouvez utiliser l'instruction de requête SQL suivante :

SELECT
    F.file_name,
    T.tablespace_name,
    TO_CHAR(F.bytes / 1024/1024, '999,999,990.99') || ' MB' AS "File Size"
FROM
    dba_data_files F
    LEFT OUTER JOIN dba_tablespaces T ON F.tablespace_name = T.tablespace_name
ORDER BY
    1;

Le résultat de sortie de l'instruction de requête SQL ci-dessus sera list each Le nom de chaque fichier de données, l'espace table auquel il appartient et sa taille.

Conclusion

L'affichage des espaces table d'Oracle est très important, car cela peut aider les administrateurs de bases de données à détecter l'utilisation de l'espace table en temps opportun et à prendre les mesures nécessaires pour garantir les performances et la disponibilité de la base de données. Dans cet article, nous présentons trois manières différentes d'afficher les tablespaces Oracle, chacune pouvant vous aider à mieux surveiller et gérer les tablespaces de votre base de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn