客户系统报错,查看日志,发现时数据库临时表空间不足,分析原因为:之前部署系统时,所建的数据库的使用的是oralce默认的临时表空间,而oralce是装在系统盘,所在的空间已不足,所以会出现临时表空不足错误,现记录,我分析数据用户,用户所在表空间,临时表空间的sql语句:
1.查看数据库中所有用户,及用户所在的表空间:
select username,default_tablespace from dba_users;
查询结果如下:
USERNAME DEFAULT_TABLESPACE
------------------------------ ------------------------------
ME17V2 ME17_DATA
MGMT_VIEW SYSTEM
SYS SYSTEM
SYSTEM SYSTEM
DBSNMP SYSAUX
SYSMAN SYSAUX
SCOTT USERS
OUTLN SYSTEM
MDSYS SYSAUX
ORDSYS SYSAUX
CTXSYS SYSAUX
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
从查询结果可以看出用户me17v2所在的表空间为me17_data
2.查询用户的表空间的使用情况,及临时表空间的位置
select
d.username 用户,
b.file_id 文件ID号,
b.tablespace_name 表空间名,
b.file_name 表空间位置,
b.bytes/1024/1024||'M'字节数,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用,
sum(nvl(a.bytes,0))/1024/1024||'M' 剩余空间,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比 ,
c.tablespace_name 临时表空间名,
c.file_name 临时表空间位置
from dba_free_space a,dba_data_files b ,dba_temp_files c,dba_users d
where a.file_id=b.file_id and d.temporary_tablespace = c.tablespace_name and b.tablespace_name = d.default_tablespace
group by d.username, b.tablespace_name,b.file_name,b.file_id,b.bytes ,c.tablespace_name ,c.file_name
order by d.username ;
查询记过如下:
用户 文件ID号 表空间名 表空间位置 字节数 已使用 剩余空间 占用百分比 临时表空间名 临时表空间位置
------------------------------ ---------- ------------------------------ -------------------------------------------------------------------------------- ----------------------------------------- ----------------------------------------- ----------------------------------------- ---------- ------------------------------ --------------------------------------------------------------------------------
ANONYMOUS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
CTXSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
DBSNMP 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
DIP 4 USERS H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\USERS01.DBF 16.25M .4375M 15.8125M 2.69230769 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
DMSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
EXFSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
MDDATA 4 USERS H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\USERS01.DBF 16.25M .4375M 15.8125M 2.69230769 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
MDSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
ME17V2 5 ME17_DATA E:\ORACLE\TABLESPACE\ME17_DATA.DBF 9M 8.3125M .6875M 92.3611111 ME17_TEMP E:\ORACLE\TABLESPACE\ME17_TEMP.DBF
MGMT_VIEW 1 SYSTEM H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSTEM01.DBF 480M 470.3125M 9.6875M 97.9817708 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
OLAPSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
ORDPLUGINS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
ORDSYS 3 SYSAUX H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSAUX01.DBF 250M 243.4375M 6.5625M 97.375 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
OUTLN 1 SYSTEM H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\SYSTEM01.DBF 480M 470.3125M 9.6875M 97.9817708 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
SCOTT 4 USERS H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\USERS01.DBF 16.25M .4375M 15.8125M 2.69230769 TEMP01 H:\ORACLE\PRODUCT\10.2.0\ORADATA\ME17\TEMP01.DBF
然后查看表空间,临时表空间所在的磁盘空间已经不足。