ホームページ  >  記事  >  データベース  >  Oracle で一時テーブルスペースをクエリする方法

Oracle で一時テーブルスペースをクエリする方法

WBOY
WBOYオリジナル
2022-03-07 16:23:5615583ブラウズ

方法: 1. "select username,temporary_tablespace from dba_users" を使用して、ユーザーが現在使用している一時表スペースを表示します。 2. "select * from dba_temp_files" を使用して、一時表スペース ファイルを表示します。

Oracle で一時テーブルスペースをクエリする方法

このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。

Oracle で一時表スペースを照会する方法

一時表スペースは、データベースのソート操作を管理し、一時表や中間ソート結果などの一時オブジェクトを保管するために使用されます。ORACLE で SORT が必要な場合、PGA の sort_area_size のサイズが十分でない場合、データはソートのために一時表スペースに置かれます。データベース内の一部の操作: CREATE INDEX、ANALYZE、SELECT DISTINCT、ORDER BY、GROUP BY、UNION ALL、INTERSECT、MINUS、SORT-MERGE JOINS、HASH JOIN などは、一時表スペースを使用する場合があります。操作が完了すると、システムは一時表スペース内の一時オブジェクトを自動的にクリーンアップし、一時セグメントを自動的に解放します。ここでのリリースは、無料としてマークされ再利用できるだけであり、実際に占有されている実際のディスク領域は実際には解放されません。これが、一時テーブルスペースが増大し続ける理由です。

一時テーブルスペースには、大規模なソート操作 (小規模なソート操作は RAM で直接完了しますが、大規模なソートにはディスクソート Disk Sort が必要です) およびハッシュ操作の中間結果が保存されます。永続的なテーブルスペースとは異なります。表スペース 違いは、永続データ ファイル (データファイル) ではなく、一時データ ファイル (一時ファイル) で構成されることです。一時表領域には永続タイプのオブジェクトは格納されないため、バックアップされず、バックアップする必要もありません。さらに、一時データ ファイルに対する操作では REDO ログは生成されませんが、UNDO ログは生成されます。

一時表スペースを作成する場合、または一時表スペースに一時データ・ファイルを追加する場合、一時データ・ファイルが大きい場合でも、追加プロセスは非常に高速です。これは、ORACLE の一時データ ファイルが特殊なタイプのデータ ファイルであるためです: スパース ファイル。一時表スペース ファイルが作成されると、ヘッダーと最後のブロック情報 (ファイルの最後のブロック) にのみ書き込まれます。そのスペースは据え置かれるため、一時表スペースを作成したり、一時表スペースにデータ ファイルをすぐに追加したりすることができます。

さらに、一時表領域は NOLOGGING モードであり、永続型オブジェクトは保存されないため、データベースが破損した場合でも、リカバリ中に一時表領域を復元する必要はありません。

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

推奨チュートリアル: 「Oracle ビデオ チュートリアル

以上がOracle で一時テーブルスペースをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。