Oralce暫存資料表空間的建立與修改

來源:互聯網
上載者:User

Oralce暫存資料表空間的建立與修改

暫存資料表空間是一個磁碟空間,主要用於儲存使用者在執行order by燈語句進行排序或匯總時產生的臨時資料。在預設的情況下,所有的使用者都使用temp作為預設暫存資料表空間。但是允許使用其他暫存資料表空間作為預設暫存資料表空間,這需要在建立使用者時進行指定。

建立暫存資料表空間是時需要使用temprary關鍵字,並且與暫存資料表空間對應的是臨時檔案,由tempfile關鍵字指定,也就是說,暫存資料表空間中不再使用資料檔案,而是用臨時檔案。

如下所示:
SQL> create temporary tablespace mytemp tempfile 'f:\Oracledata\mytemp.dbf' size 5m autoextend on next 2m maxsize 20m;

資料表空間已建立。
此時在f盤的oracledata的目錄下可以找到mytemp.dbf的檔案
SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME                STATUS
------------------------------ ---------
SYSTEM                        ONLINE
SYSAUX                        ONLINE
UNDOTBS1                      ONLINE
TEMP                          ONLINE
USERS                          ONLINE
TEMPGROUP                      ONLINE
TEMPGROUP02                    ONLINE
MYBIGSPACE                    ONLINE
BLOCKSPACE                    ONLINE
INSPUR                        ONLINE
TESTSPACE                      ONLINE
TEST                          ONLINE

MYTEMP                        ONLINE

已選擇 12 行。

此時在我們的資料表空間下可以找到MYTEMP資料表空間。

修改暫存資料表空間
建立暫存資料表空間後,可以對該資料表空間進行修改。由於臨時檔案中不儲存永久性的資料,知識儲存排序等操作過程中產生的臨時資料,並且在使用者建立操作結束後,臨時檔案中儲存的資料由系統刪除,所以一般的情況下不需要調整暫存資料表空間。但是當兵法使用者特別多,並且操作比較複雜時,可能會發生暫存資料表空間的不足。這時,資料管理員可以增加臨時檔案來增大暫存資料表空間。
如果需要增減臨時檔案,可以使用add tempfile子句。
如果需要修改臨時檔案的大小,可以使用resize關鍵字。
還可以修改臨時檔案的狀態為offline或online。

SQL> select file#,status,name from v$tempfile;


    FILE# STATUS  NAME
-----------------------------------------------------------------------------------------------
        1 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\TEMP01.DBF
        2 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\PDBSEED\PDBSEED_TEMP012015-01-03_05-20-33-PM.DBF
        3 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\PDBORCL\PDBORCL_TEMP012015-01-03_05-44-35-PM.DBF
        4 ONLINE  F:\ORACLEDATA\MYTEMP.DBF
        6 ONLINE  F:\ORACLEDATA\TEMPGROUP01.DBF
        7 ONLINE  F:\ORACLEDATA\TEMPGROUP02.DBF


已選擇 6 行。

SQL> alter tablespace mytemp add tempfile 'f:\oracledata\mytemp2.dbf' size 10m;

資料表空間已更改。

SQL> select file#,status,name from v$tempfile;


    FILE# STATUS  NAME
----------------------------------------------------------------------------------------------
        1 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\TEMP01.DBF
        2 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\PDBSEED\PDBSEED_TEMP012015-01-03_05-20-33-PM.DBF
        3 ONLINE  D:\ORACLE\ORADATA\ORACLE12C\PDBORCL\PDBORCL_TEMP012015-01-03_05-44-35-PM.DBF
        4 ONLINE  F:\ORACLEDATA\MYTEMP.DBF
        5 ONLINE  F:\ORACLEDATA\MYTEMP2.DBF
        6 ONLINE  F:\ORACLEDATA\TEMPGROUP01.DBF
        7 ONLINE  F:\ORACLEDATA\TEMPGROUP02.DBF

如上所示,在f盤的oracledata檔案夾下產生了一個mytemp2.dbf檔案

以上的文章來自學習中的記錄。

Undo資料表空間失敗的處理方法

Oracle Undo資料表空間重建與恢複

Oracle 11g 在RedHat Linux 5.8_x64平台的安裝手冊

Linux-6-64下安裝Oracle 12C筆記

在CentOS 6.4下安裝Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虛擬機器中安裝步驟

Debian 下 安裝 Oracle 11g XE R2

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.