Maison  >  Article  >  base de données  >  Comment interroger un espace table temporaire dans Oracle

Comment interroger un espace table temporaire dans Oracle

WBOY
WBOYoriginal
2022-03-07 16:23:5615503parcourir

Méthode : 1. Utilisez "select username,temporary_tablespace from dba_users" pour afficher l'espace table temporaire actuellement utilisé par l'utilisateur ; 2. Utilisez "select * from dba_temp_files" pour afficher les fichiers d'espace table temporaire.

Comment interroger un espace table temporaire dans Oracle

L'environnement d'exploitation de ce tutoriel : système Windows 10, version Oracle 11g, ordinateur Dell G3.

Comment interroger l'espace table temporaire dans Oracle

L'espace table temporaire est utilisé pour gérer les opérations de tri de la base de données et pour stocker les tables temporaires, les résultats de tri intermédiaires et d'autres objets temporaires lorsque SORT doit être utilisé dans ORACLE et lorsque la taille sort_area_size. dans PGA ne suffit pas. Quand, les données seront placées dans l'espace table temporaire pour être triées. Certaines opérations dans la base de données : CREATE INDEX, ANALYZE, SELECT DISTINCT, ORDER BY, GROUP BY, UNION ALL, INTERSECT, MINUS, SORT-MERGE JOINS, HASH JOIN, etc. peuvent utiliser des espaces de table temporaires. Une fois l'opération terminée, le système nettoie automatiquement les objets temporaires dans l'espace table temporaire et libère automatiquement les segments temporaires. La version ici est uniquement marquée comme gratuite et peut être réutilisée. En fait, l'espace disque réellement occupé n'est pas réellement libéré. C’est pourquoi l’espace table temporaire ne cesse parfois de croître.

L'espace table temporaire stocke les opérations de tri à grande échelle (les opérations de tri à petite échelle seront effectuées directement dans la RAM, le tri à grande échelle nécessite le tri sur disque) et les résultats intermédiaires des opérations de hachage. La différence entre celui-ci et l'espace table permanent. est qu'il est composé de fichiers de données temporaires (fichiers temporaires), plutôt que de fichiers de données permanents (fichiers de données). Le tablespace temporaire ne stocke pas d'objets de type permanent, il n'a donc pas besoin d'être sauvegardé. De plus, les opérations sur les fichiers de données temporaires ne génèrent pas de journaux de rétablissement, mais des journaux d'annulation sont générés.

Lors de la création d'un tablespace temporaire ou de l'ajout d'un fichier de données temporaire à un tablespace temporaire, le processus d'ajout est assez rapide même si le fichier de données temporaire est volumineux. En effet, le fichier de données temporaire d'ORACLE est un type spécial de fichier de données : fichier fragmenté. Lorsque le fichier d'espace table temporaire est créé, il écrit uniquement dans l'en-tête et les informations du dernier bloc du fichier. Son espace est différé. C'est pourquoi vous créez un espace table temporaire ou ajoutez rapidement des fichiers de données à un espace table temporaire.

De plus, le tablespace temporaire est en mode NOLOGGING et n'enregistre pas les objets permanents, donc même si la base de données est endommagée, il n'est pas nécessaire de restaurer le tablespace temporaire lors de la récupération.

--查看用户当前使用的临时表空间
select username,temporary_tablespace from dba_users;
--查看数据库临时表空间文件
select * from dba_temp_files;
--查看数据库临时表空间使用情况
select * from dba_temp_free_space;

Tutoriel recommandé : "Tutoriel vidéo Oracle"

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