SQL> @/tmp/4.txt
create table huang_1 (deptno number,dname varchar2(19),loc varchar2(20))
*
ERROR at line 1:
ORA-25153: Temporary Tablespace is Empty
提示temporary表空間為空。
下面我們查看當前是那個用戶
SQL> show user
USER is "SYS"
下面我們查看這個用戶的默認的temporary表空間是那個。
SQL> select username,temporary_tablespace from dba_users where username='SYS';
USERNAME TEMPORARY_TABLESPACE
------------------------------ ------------------------------
SYS TEMP
下面我們查看這個表空間在狀態。
SQL> select tablespace_name,status from dba_tablespaces where tablespace_name='TEMP';
TABLESPACE STATUS
---------- ---------
TEMP ONLINE
這裡是online,如果是offline,我們就要alter tablespace temp online,online我們就不管它。
下面我們查看表空間和數據文件的對應關系。
SQL> select file_name,tablespace_name from dba_temp_files;
FILE_NAME TABLESPACE
-------------------------------------------------- ----------
/opt/oracle/oradata/orcl/temphuang.dbf TEMPHUANG
在這裡我們沒有看到temp這個表空間,說明temp這個表空間的數據文件在邏輯上面是不存在的,下面我們查看物理上面是否存在,
SQL> !ls /opt/oracle/oradata/orcl/temp01.dbf
/opt/oracle/oradata/orcl/temp01.dbf
上面說明物理上面是存在的,只是邏輯上面不存在,下面我們填加就可以了。
SQL> alter tablespace temp add tempfile '/opt/oracle/oradata/orcl/temp01.dbf';
Tablespace altered.
下面再次查看是否存在
SQL> select tablespace_name,file_name from dba_temp_files;
TABLESPACE FILE_NAME
---------- --------------------------------------------------
TEMPHUANG /opt/oracle/oradata/orcl/temphuang.dbf
TEMP /opt/oracle/oradata/orcl/temp01.dbf
已經存在了,下面是執行我們原來執行的命令。
SQL> @/tmp/4.txt
Table created.
已經成功了。
--本篇文章轉自:ORA-25153: Temporary Tablespace is Empty 解決方法