Oracle临时表空间不足

-- 用户的缺省表空间、临时表空间
select t.username, t.default_tablespace, t.temporary_tablespace
from dba_users t
order by t.username; -- 临时表空间对应临时文件的大小及使用情况
SELECT TABLESPACE_NAME
, FILE_ID
, FILE_NAME
, BLOCKS
, STATUS
, AUTOEXTENSIBLE
, BYTES/1024/1024 AS "FILE_SIZE(M)"
, DECODE(MAXBYTES, 0, BYTES/1024/1024, MAXBYTES/1024/1024) AS "MAX_SIZE(M)"
, INCREMENT_BY AS "INCREMENT_BY"
, USER_BYTES/1024/1024 AS "USEFUL_SIZE"
, BLOCKS - USER_BLOCKS AS SYSTEM_USED
FROM DBA_TEMP_FILES
ORDER BY 2; -- Or
SELECT TABLESPACE_NAME,
FILE_ID,
BYTES_USED/1024/1024 AS TABLESAPCE_USED,
BYTES_FREE/1024/1024 AS TABLESAPCE_FREE
FROM V$TEMP_SPACE_HEADER
ORDER BY 2; -- 增加、调整数据文件大小、增量
ALTER TABLESPACE TEMPX
ADD TEMPFILE '/u01/app/oracle/oradata/orcl/temp02.dbf'
SIZE 4G
AUTOEXTEND ON
NEXT 200M
MAXSIZE 16G; ALTER DATABASE TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
AUTOEXTEND ON
NEXT 200M
MAXSIZE UNLIMITED; ALTER DATABASE TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
RESIZE 4G; -- 收缩临时表空间
ALTER TABLESPACE TEMPX SHRINK SPACE KEEP 8G; -- 更改缺省的临时表空间
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPX;
ALTER USER tkk_us TEMPORARY TABLESPACE TEMPX;

补充,表空间大小查询

select * from dba_tablespaces;
select * from dba_data_files;
select * from dba_free_space;
select * from dba_segments;
select * from dba_temp_files;
select * from dba_temp_free_space; --根据dba_data_files和dba_free_space统计表空间大小和表空间剩余大小
SELECT A.TABLESPACE_NAME
, B.TOTAL / 1024 / 1024 || 'M'
, (B.TOTAL - A.USE) / 1024 / 1024 || 'M' FREE
FROM (
SELECT c.tablespace_name, (c.p_use - d.p_free) AS USE
FROM (
SELECT tablespace_name, SUM(bytes) AS p_use
FROM dba_data_files
WHERE tablespace_name NOT IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
) C
, ( SELECT tablespace_name, SUM(bytes) AS p_free
FROM dba_free_space
WHERE tablespace_name NOT IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
) D
WHERE C.tablespace_name = D.tablespace_name
) A
, (
WITH TABLESPACE_TOTAL AS (
SELECT tablespace_name, SUM(MAXBYTES) TOTAL
FROM DBA_DATA_FILES T
WHERE T.AUTOEXTENSIBLE = 'YES'
AND T.TABLESPACE_NAME NOT IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
UNION ALL
SELECT tablespace_name, SUM(bytes) TOTAL
FROM DBA_DATA_FILES T
WHERE T.AUTOEXTENSIBLE = 'NO'
AND T.TABLESPACE_NAME NOT IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
)
SELECT TABLESPACE_NAME, SUM(TOTAL) TOTAL
FROM TABLESPACE_TOTAL
GROUP BY TABLESPACE_NAME
) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME; --根据dba_data_files和dba_segments统计表空间总大小和剩余大小
SELECT A.TABLESPACE_NAME, B.TOTAL / 1024 / 1024 || 'M', (B.TOTAL - A.USE) / 1024 / 1024 || 'M' FREE
FROM (
SELECT TABLESPACE_NAME, SUM(bytes) AS USE
FROM dba_segments
--WHERE tablespace_name IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY TABLESPACE_NAME
) A
, (
WITH TABLESPACE_TOTAL AS (
SELECT tablespace_name, SUM(MAXBYTES) TOTAL
FROM DBA_DATA_FILES T
WHERE T.AUTOEXTENSIBLE = 'YES'
--AND T.TABLESPACE_NAME IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
UNION ALL
SELECT tablespace_name, SUM(bytes) TOTAL
FROM DBA_DATA_FILES T
WHERE T.AUTOEXTENSIBLE = 'NO'
--AND T.TABLESPACE_NAME IN ('SYSTEM', 'SYSAUX', 'USERS', 'UNDOTBS1', 'UNDOTBS2')
GROUP BY tablespace_name
) SELECT TABLESPACE_NAME, SUM(TOTAL) TOTAL
FROM TABLESPACE_TOTAL
GROUP BY TABLESPACE_NAME
) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME;

Oracle表空间不足的更多相关文章

  1. Oracle表空间,用户,用户授权

    一:Oracle表空间 1,Oracle表空间与SQL Server文件组对比 SQL Server的文件组(文件组包括若干MDF,NDF数据文件)对我们来说并不陌生,前段时间我在博客“怎样玩转千万级 ...

  2. Oracle表空间管理

    oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE;              //修改表空间数据文件类型 2.ALT ...

  3. 【转】Oracle 表空间与数据文件

    --============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...

  4. 六分钟学会创建Oracle表空间的步骤

    经过长时间学习创建Oracle表空间,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西. 1.先查询空闲空间 select tablespace_name,file_id,blo ...

  5. 修改Oracle 表空间名称 tablespace name

    修改表空间名称步骤如下: 1. 使用oracle用户登录执行 $sqlplus / as sysdba 2. 执行修改表空间命令如下 SQL> alter tablespace  TEST re ...

  6. interview:about Oracle表空间

    Oracle表空间 SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计.Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献.可 ...

  7. Oracle表空间详解

    Oracle表空间详解 1.表空间的分类 Oracle数据库把表空间分为两类:系统表空间和非系统表空间. 1.1系统表空间指的是数据库系统创建时需要的表空间,这些表空间在数据库创建时自动创建,是每个数 ...

  8. Python巡检Oracle表空间并邮件告警

    最近,自学了Python基础,突发奇想,把以前通过shell自定义通过nagios实现Oracle表空间以及ASM以及备份的脚本改进下,首先感叹的是Python脚本看上去确实挺好的,效率还不错. 这是 ...

  9. Oracle 表空间扩充

    Oracle 表空间扩充 一.现场环境: (1)操作系统:AIX (2)数据库:Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - ...

  10. nagios监控oracle 表空间

    oracle表空间满的危害以及处理方式见我的博客链接https://www.cnblogs.com/-abm/p/9764803.html 除此之外我们还需要对表空间实时监控,这样就可以及时了解表空间 ...

随机推荐

  1. Gradle version 2.2 is required. Current version is 2.14.1.

    gradle版本错误: 1. 修改gradle\wrapper\gradle-wrapper.properties文件: distributionUrl=https\://services.gradl ...

  2. Docker中的镜像分层技术详解

    早在集装箱没有出现的时候,码头上还有许多搬运的工人在搬运货物,在集装箱出现以后,码头上看到更多的不是工人,而且集装箱的搬运模式更加单一,更加高效,还有其他的好处,比如:货物多打包在集装箱里面,可以防止 ...

  3. 在eclipse中导入weka(小白在路上)

    第一步:新建一个java工程,new->javaproject,假设工程名为wekatest 第二步:导入weka.jar 第三步:src关联 导入后有许多的.class文件,直接双击打开是看不 ...

  4. mongodb unclean shutdown 修复方法

    启动mongodb时,提示Unclean shutdown detected mongodb,解决方法很简单 mongod --repair --dbpath D:\MongoDB\data\db

  5. 学习笔记 DataGridView数据导出为Excel

    DataGridView数据导出为Excel   怎样把WinForm下的“DGV”里的绑定数据库后的数据导出到Excel中. 比如:在窗体里有个一“DGV”,DataGridView1,绑定了数据源 ...

  6. 3d加速的一些问题

    笔记本一般有双显卡,默认可以切换,但是使用浏览器打开的要合适的浏览器 打开WEBGL程序,包括驱动,浏览器,有时候需要手工设置独立显卡 一般来说价钱四五千以上的笔记本电脑都是支持WEBGL的,而且可以 ...

  7. flash透明效果代码分享~~~

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  8. Android layout_weight的用法

    android:layout_weight是指LinearLayout先给里面的控件分配完大小之后剩余空间的权重. 下面通过举例说明: <LinearLayout xmlns:android=& ...

  9. Launch Screen在iOS7/8中的实现

    Launch Screen在iOS7/8中的实现 目前项目中需要解决的问题是: 兼容iOS7和iOS8,之前的版本不需要支持了 实现兼容3.5.4.4.7和5.5寸屏幕,竖屏的Lauch Screen ...

  10. 在Linux中使用vi打开文件时如何显示行号,及跳转到指定行

    vi 文件名,打开文件后 如果要显示所有行号,使用 :set nu 如果要显示当前行号,使用 :nu 如果要跳转到指定行,使用 :行号 例如,跳转到第10行,使用 :10