ORACLE表空间查询和管理【转】
红色是自由指定的~~
--查询表空间
SELECT D.TABLESPACE_NAME,
SPACE "SUM_SPACE(M)",
SPACE - NVL(FREE_SPACE, 0) "USED_SPACE(M)",
ROUND((1 - NVL(FREE_SPACE, 0) / SPACE) * 100, 2) "USED_RATE(%)",
FREE_SPACE "FREE_SPACE(M)",
MAX_SPACE,
ROUND(((SPACE - NVL(FREE_SPACE, 0)) / MAX_SPACE) * 100, 2) "USED_RATE_MAX_SIZE(%)"
FROM (SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,
ROUND(SUM(DECODE(SIGN(MAXBYTES - BYTES), 1, MAXBYTES, BYTES)) / 1024 / 1024,
2) MAX_SPACE
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) D,
(SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) FREE_SPACE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) F
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
UNION ALL
SELECT D.TABLESPACE_NAME,
SPACE "SUM_SPACE(M)",
SPACE - NVL(FREE_SPACE, 0) "USED_SPACE(M)",
ROUND((1 - NVL(FREE_SPACE, 0) / SPACE) * 100, 2) "USED_RATE(%)",
FREE_SPACE "FREE_SPACE(M)",
MAX_SPACE,
ROUND(((SPACE - NVL(FREE_SPACE, 0)) / MAX_SPACE) * 100, 2) "USED_RATE_MAX_SIZE(%)"
FROM (SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,
ROUND(SUM(DECODE(SIGN(MAXBYTES - BYTES), 1, MAXBYTES, BYTES)) / 1024 / 1024,
2) MAX_SPACE
FROM DBA_TEMP_FILES
GROUP BY TABLESPACE_NAME) D,
(SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE
FROM V$TEMP_SPACE_HEADER
GROUP BY TABLESPACE_NAME) F
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
------------------------------------------
--查看表空间属性--
SELECT T.TABLESPACE_NAME,D.FILE_NAME,D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUS
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T.TABLESPACE_NAME =D.TABLESPACE_NAME and T.TABLESPACE_NAME='DATA'
ORDER BY TABLESPACE_NAME,FILE_NAME;
--添加数据文件
ALTER TABLESPACE DATA ADD DATAFILE '/data/data01.dbf' SIZE 8192M;
--修改数据文件大小(尽量避免改小,貌似有HWM的问题,要修改的话,貌似先整理表空间碎片?)
ALTER DATABASE DATAFILE '/data/data_01.dbf' RESIZE 8192M;
--为了防止把硬盘撑爆,关闭自动拓展比较好。
ALTER DATABASE DATAFILE '/data/data_01.dbf' AUTOEXTEND OFF;
-------------------------------------
----释放磁盘空间-----
--首先用语句查询容量大于1G的数据段
select segment_name,sum(bytes)/1024/1024/1024 as GB from dba_segments group by segment_name having sum(bytes)/1024/1024/1024>1
/*得到如下结果:
SYS_LOB0000136091C00003$$ 255332M
SYS_LOB0000136441C00004$$ 7170M
SYS_C0082042 1305M
SYS_C0080433 1340M*/
--根据LOB段查询该该lob段属于哪个表
select table_name,segment_name from dba_lobs where segment_name='SYS_LOB0000136091C00003$$'
/*经查得知是ADU_*表占了很多容量
3.用Dbvisulizer/plsql连到数据库,删除重复的数据行,但删除这些重复的数据后,并不会释放出磁盘空间
4.然后释放lob类型数据占据的空间*/
alter table adu_* move tablespace BFPICK lob(content) store as (tablespace bfpick)
--之后就释放了重复数据所占的空间了,然后在对该表重建索引
alter index ***** rebuild;
----------------------------------------
--查询进程数/操作用户--
select count(*) from v$process
select value from v$parameter where name = 'processes'
SELECT osuser, a.username,cpu_time/executions/1000000||'s', sql_fulltext,machine
from v$session a, v$sqlarea b
where a.sql_address =b.address order by cpu_time/executions desc
-----------------------------------------
--清理分区表
ALTER TABLE table_1 truncate PARTITION PART_201303;
ALTER TABLE table_1 DROP PARTITION PART_201303;
ALTER TABLE table_1 truncate PARTITION PART_201304;
ALTER TABLE table_1 DROP PARTITION PART_201304;
转自
表空间查询和管理-wangwenan6-ITPUB博客
http://blog.itpub.net/29510932/viewspace-1096957/
ORACLE表空间查询和管理【转】的更多相关文章
- Oracle 表空间查询与操作方法
一.查询篇 1.查询oracle表空间的使用情况 select b.file_id 文件ID, b.tablespace_name 表空间, b.file_name 物理文件名, b.bytes ...
- oracle表空间创建及管理
一.数据文件和数据库逻辑存储结构: 一个表空间包含一个或多个数据文件,一个表空间包含一个或多个段,一个段包含一个或多个区,一个区包含一个或多个连续的数据库块,一个数据库块包含一个或多个操作系统块.段是 ...
- oracle表空间查询维护命令大全之二(undo表空间)
--undo表空间汇总 --查看全部的表空间名字 select name from v$tablespace; --创建新的UNDO表空间,并设置自己主动扩展參数; create undo table ...
- oracle表空间查询维护命令大全之三(暂时表空间)史上最全
--UNDO表空间汇总 --查看全部的表空间名字 SELECT NAME FROM V$TABLESPACE; --创建新的UNDO表空间,并设置自己主动扩展參数; CREATE UNDO TABLE ...
- oracle表空间查询维护命令大全之中的一个(数据表空间)史上最全
表空间是数据库的逻辑划分,一个表空间仅仅能属于一个数据库. 全部的数据库对象都存放在建立指定的表空间中.但主要存放的是表, 所以称作表空间.在oracle 数据库中至少存在一个表空间.即S ...
- 常用oracle表空间查询语句
--查询数据库表空间使用情况 select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/ ...
- 转: Oracle表空间查询
1.查询数据库中的表空间名称 1)查询所有表空间 select tablespace_name from dba_tablespaces; select tablespace_name from us ...
- Oracle表空间管理
oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE; //修改表空间数据文件类型 2.ALT ...
- Oracle表空间的管理方式
解释说明:表空间是一个逻辑概念:=> oracle 逻辑概念段区块管理方式: number one => tablespace number two=> segments Oracl ...
随机推荐
- mysql中LIKE和REGEXP
mysql中LIKE和REGEXP都可以用来字符匹配 正则表达式REGEXP是为复杂搜索指定模式的强大方式. like用法 LIKE一般与通配符(%)和(_)两个使用 如例 SELECT prod ...
- 【XSY1759】Alice and Bob
Description XSY1759 Solution 肯定是离线对每个子树求答案. 考虑对每个子树建出所包含的值的Trie树,这点用启发式算法实现即可,即每个元素会被插入\(\mathcal O( ...
- 【BZOJ2281】【Sdoi2011】黑白棋 解题报告
[BZOJ2281][Sdoi2011]黑白棋 Description 小A和小B又想到了一个新的游戏. 这个游戏是在一个\(1\)*\(n\)的棋盘上进行的,棋盘上有\(k\)个棋子,一半是 ...
- 洛谷 P1777 帮助_NOI导刊2010提高(03) 解题报告
P1777 帮助_NOI导刊2010提高(03) 题目描述 Bubu的书架乱成一团了!帮他一下吧! 他的书架上一共有n本书.我们定义混乱值是连续相同高度书本的段数.例如,如果书的高度是30,30,31 ...
- Mysql基本的一些查询操作
/*查询选修课程‘3-105’且成绩在60到80之间的所有记录.*/SELECT * FROM result WHERE CNO='3-105' AND GRADE > 60 AND GRADE ...
- phpmyadmin 配置方法
几乎所有的配置参数都在 config.inc.php 文件中.如果这个文件不存在,您可以在 libraries 目录中找到 config.default.php,将它复制到根目录,并改名为 confi ...
- BUG1 解决java compiler level does not match the version of the installed java project facet
因工作的关系,Eclipse开发的Java项目拷来拷去,有时候会报一个很奇怪的错误.明明源码一模一样,为什么项目复制到另一台机器上,就会报“java compiler level does not m ...
- 省选模拟赛 cti
3 cti (cti.cpp/in/out, 1s, 512MB)3.1 Description有一个 n × m 的地图, 地图上的每一个位置可以是空地, 炮塔或是敌人. 你需要操纵炮塔消灭敌人.对 ...
- BZOJ 3160 FFT+马拉车
题意显然 ans=回文子序列数目 - 回文子串数目 回文子串直接用马拉车跑出来 回文子序列一开始总是不知道怎么求 (太蠢了) 后面看了题解 构造一个神奇的卷积 (这个是我盗的图)地址 后面还有一些细节 ...
- 约瑟夫环问题算法(M)
http://blog.csdn.net/zhuimengzh/article/details/6727221 用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出.写出C程序 ...