1、查看一个表暂用的表空间大小: SELECT bytes/1024/1024||'MB',a.*FROM user_segments a WHERE a.segment_name ='TL_SP_NONREAL_LIST_201505'; //103查询错单表空间 SELECT segment_name,sum(bytes)/1024/1024 FROM User_Segments a WHERE a.tablespace_name='ZHJS_LIST_ERROR' AND a.segment_type='TABLE PARTITION' AND a.BYTES<>'8388608' AND a.segment_name NOT LIKE '%200906' GROUP BY a.segment_name

2、查看一个表空间所占的实际大小: SELECT sum(bytes)/1024/1024||'MB' FROM user_segments a WHERE a.tablespace_name ='SETT_ANALYSE_LIST_201505';

3、查看一个表空间对应的数据文件: SELECT * FROM dba_data_files a WHERE a.tablespace_name ='SETT_ANALYSE_LIST_201505';

4、查询表空间的总大小以及使用大小 select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB", round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used" from (select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name) b where a.tablespace_name=b.tablespace_name order by ((a.bytes-b.bytes)/a.bytes) desc;

5、创建一个大数据量的表,占用表空间大小几个G,delete这张表的数据,此时只需查询发现很慢,查询的表数据为空, 其实就是其表空间没有释放的缘故。 执行alter table jk_test move 或 alter table jk_test move storage(initial 64k) 或alter table jk_test deallocate unused KEEP 0或 alter table jk_test shrink space. 这样操作后,会失去索引,这是可以将失效的索引重建 select index_name,table_name,tablespace_name,index_type,status  from dba_indexes  where table_owner='SETT_ANALYSE' ; 根据status的值,重建无效的就好了alter owner.index_name rebuild; ,再次查询就很小了 注意:drop...purge 和 truncate表时,其所占用的空间会得到释放,原因应该是不进入回收站,(单独drop会进入回收站的) 进回收站的数据可以通过flashback找回:具体方法如下: select original_name,dropscn from recyclebin where lower(original_name)='js_stat_sp_report_sec_1009'; flashback table jianbiao_beifen to before drop;

6、不管是delete还是truncate相应的数据文件大小都不会改变,如果想改变数据文件占用的空间大小可执行: alter database datafile 'filename' resize 8g,重定义文件大小 关于purge的补充: purge tablespace tablespace_name--清空表空间的recycle bin purge tablespace tablespace_name user username--指定表空间的recycle bin的指定对象 drop table table_name purge--永久删除,不能用flashback恢复

7、移动表空间 分区表:altrer table TL_Y_TOLL_XJJS_LIST_201603 move partition D_21 tablespace zhjs_dsyy; 非分区表:alter table TL_Y_TOLL_XJJS_LIST_201603 move tablespace zhjs_dsyy ;

8、查询哪张表被建索引:SELECT * FROM user_indexes; 判断哪张表的那个字段建了索引:select * from user_ind_columns;

9、如果是在已有的表空间中添加数据文件,则使用: alter tablespace 表空间名 add datafile '数据文件名称路径' size 50M; 如果是新建一个表空间则是: create tablespace 表空间名 datafile '数据文件名称路径' size 50M;

出库: P_EXPDB_COLLECT_LIST

move_list_data_to_szx

gdb跟踪命令: gdb 进程名 进程号 b *.cpp:行数 :打断点在哪一行 p 变量 :打印出变量的值 n :下一步 s :进方法 exit 退出

ppstdcdr--标准格式 wjjsct_ngn.h继承cdrbase.sh  #include "cdrbase.h"

truncate table 后,有可能表空间仍没有释放,可以使用如下语句: alter table 表名称 deallocate   UNUSED KEEP 0; 注意如果不加KEEP 0的话,表空间是不会释放的。  例如: alter table F_MINUTE_TD_NET_FHO_B7 deallocate   UNUSED KEEP 0; 或者: TRUNCATE TABLE (schema)table_name DROP(REUSE) STORAGE才能释放表空间。  例如: truncate table  test1 DROP STORAGE; 三、查询分区表存在哪些分区:  查询分区表的情况,可以在USER_TAB_PARTITIONS中查询。例如: select 'alter table '||t.table_name ||' truncate   partition ' || t.partition_name from USER_TAB_PARTITIONS t where t.table_name like 'F_%' 查询各个分区暂用表空间

SELECT  TABLESPACE_NAME,partition_name,TO_CHAR(SUM(BYTES)/(1024*1024),'999G999D999')   FROM   DBA_EXTENTS   WHERE    SEGMENT_NAME='TL_ERR_D_SMS'   AND   SEGMENT_TYPE   LIKE   'TABLE%'   GROUP   BY   TABLESPACE_NAME,partition_name;

清除指定某个分区表的分区数据: alter   table  表名称   truncate   partition   分区名称; 四、清除分区表占用的空间: alter table 表名称  DROP    partition 分区名称; 例如: alter table F_HOUR_TD_NET_MPVOICE  DROP    partition P_09121913         ;

--查看单个表占用物理空间的大小 ---查询分区表 SELECT a.* FROM (   SELECT t.owner,t.tablespace_name,t.segment_name,sum(t.BYTES)/1024/1024/1024 total    FROM sys.sys_dba_segs t   WHERE t.partition_name IS NOT NULL   AND   t.segment_name NOT LIKE '%$%' /*  AND   lower(t.owner) = 'zhjs_app' */   AND   UPPER(t.tablespace_name) = UPPER('ZHJS_ZDJS_0510')   GROUP by t.owner,t.tablespace_name,t.segment_name ) a /*WHERE a.total >= 2.5 */ ORDER BY a.total DESC ; --查询非分区表 SELECT a.* FROM (   SELECT t.owner,t.tablespace_name,t.segment_name,sum(t.BYTES)/1024/1024/1024 total    FROM sys.sys_dba_segs t   WHERE t.partition_name IS NULL   AND   t.segment_name NOT LIKE '%$%' /*  AND   lower(t.owner) = 'zhjs_app' */   AND   UPPER(t.tablespace_name) = UPPER('ZHJS_ZDJS_0510')   GROUP by t.owner,t.tablespace_name,t.segment_name ) a /*WHERE a.total >= 2.5 */ ORDER BY a.total DESC ;

TRUNCATE TABLE  ter_510.BSS_ZSZH_COUPON_BACKUP; TRUNCATE TABLE   ter_510.TL_ERROR_LIST_ELSE; TRUNCATE TABLE  ter_510.TL_SETT_LIST_HIS; TRUNCATE TABLE   ter_510.BSS_TD_STORE_INOUT_CHANGE_BKP; TRUNCATE TABLE ter_510.BSS_CHANNEL_TEMP;

10、9i的版本都是现将所有的文件删除再增加

(1)、

--将一个以前的比较大的表空间置空,抢需要扩空间的表空间放到这个文件对应的表中 drop tablespace ZHJS_LIST_CWJJS_201511 including contents; update zhjs_param.TP_DATA_FILES_INFO t set t.tablespace_name = '' where t.tablespace_name = 'ZHJS_LIST_CWJJS_201511' ;

--drop tablespace ZHJS_LIST_CTJS_201509 including contents; SELECT t.rowid,t.* FROM  zhjs_param.TP_DATA_FILES_INFO t WHERE t.tablespace_name IS NULL; where t.tablespace_name LIKE '%TEMP%' ;--更新表空间到文件对应的表中

(2)增加:

alter tablespace ZHJS_LIST_MYJS_201605   add datafile         '/dev/vgjs4_03/rjs_03_046' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_03/rjs_03_049' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_03/rjs_03_075' size 7980M AUTOEXTEND OFF;                   alter tablespace ZHJS_LIST_MYJS_201605   add datafile         '/dev/vgjs4_03/rjs_03_079' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_05/rjs_05_080' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_06/rjs_06_017' size 7980M AUTOEXTEND OFF;

alter tablespace ZHJS_LIST_MYJS_201605   add datafile         '/dev/vgjs4_06/rjs_06_023' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_06/rjs_06_034' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_06/rjs_06_049' size 7980M AUTOEXTEND OFF;                   alter tablespace ZHJS_LIST_MYJS_201605   add datafile         '/dev/vgjs4_14/rjs_14_024' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_14/rjs_14_025' size 7980M AUTOEXTEND OFF,                 '/dev/vgjs4_14/rjs_14_026' size 7980M AUTOEXTEND OFF;

(3)查询:

select t1.tablespace_name "表空间名称",t1.flag "表空间类型",trunc(t1.bytes-nvl(t2.bytes,0),2) "使用空间(G)",
trunc(nvl(t2.bytes,0),2) "剩余空间(G)",trunc(t1.bytes,2) "总空间(G)",100-round(100*nvl(t2.bytes,0)/t1.bytes,2) "使用率",
round(100*nvl(t2.bytes,0)/t1.bytes,2) "剩余率",trunc(t1.maxbytes,2) "最大可扩展空间"
from (
SELECT tablespace_name,sum(d1.bytes)/1024/1024/1024bytes,'NORMAL' FLAG,
sum(decode(d1.autoextensible,'NO',d1.bytes,d1.maxbytes))/1024/1024/1024 maxbytes
FROM dba_data_files d1
GROUP BY tablespace_name
UNION all
SELECT tablespace_name,sum(d2.bytes)/1024/1024/1024bytes,'TEMP' FLAG,
sum(decode(d2.autoextensible,'NO',d2.bytes,d2.maxbytes))/1024/1024/1024 maxbytes
FROM dba_temp_files d2
GROUP BY tablespace_name ) t1,(
SELECT tablespace_name,sum(f.bytes)/1024/1024/1024 bytes
FROM dba_free_space f
GROUP BY tablespace_name ) t2
where t1.tablespace_name = t2.tablespace_name(+)
ORDER by t1.flag,t1.tablespace_name ;

10.2以后的版本增添了新功能 你可以通过执行以下命令,实现删除一个表空间中的一个数据文件的功能

alter tablespace drop datafile (除数据文件是表空间的第一个数据文件以外)

查看表是否被锁:

SELECT /*+ rule */ lpad(' ',decode(l.xidusn ,0,3,0))||l.oracle_username User_name, o.owner,o.object_name,o.object_type,s.sid,s.serial# FROM v$locked_object l,dba_objects o,v$session s WHERE l.object_id=o.object_id AND l.session_id=s.sid  AND upper(o.OBJECT_NAME) LIKE '%TO_ALERT_SMS_%' ORDER BY o.object_id,xidusn DESC ;

转载于:https://www.cnblogs.com/muliu/p/5502402.html

关于oracle的笔记相关推荐

  1. 初学Oracle的笔记(2)——基础内容(实时更新中..)

    续 初学Oracle的笔记(1)--基础内容(实时更新中..) 1.oracle中创建一张表,写法与sql server中的一样. SQL> create table Course 2 ( cn ...

  2. Oracle安装笔记

    Oracle安装笔记 出现错误后不要慌,最主要的是看log文件的提示,其中比较简单的文件是install目录下的make.log 错误一: client_shared For example: /us ...

  3. C#中使用Oracle 存储过程笔记

      C#中使用Oracle 存储过程笔记 1. 调用包含out/ in out类型参数的存储过程 存储过程: CREATE OR REPLACE PROCEDURE "SITE_EDITSI ...

  4. oracle:oracle学习笔记(四)循环、光标、异常、瀑布模型

    oracle学习笔记:循环.光标.异常 文章目录 打印Hello World 定义基本变量 引用型变量(单行)` my_name emp.ename%type ` 记录型变量(多行) `emp_rec ...

  5. Oracle学习笔记---(一)

    Oracle学习笔记---(一) 一 1.Oracle简介     Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库:是一个对象关系数据库管理系统(ORDBMS).它提供了关系数据库 ...

  6. 在大量数据迁移期间oracle学习笔记

    在数据迁移期间oracle学习笔记 0主键(自增) 1用户代码 2区域代码 3承保公司代码 4理赔编码 5投保确认码 6案件状态 7案件进展 8重开案件进展 9转换后案件状态 需求分析: 1.根据上述 ...

  7. oracle常用笔记(二)

    文章目录 oracle常用笔记(二) 1. 视图 2. 索引 3. pl/sql 基本语法 1. 变量声明 2. if分支 3. LOOP 循环 4. 游标Cursor 4. 存储过程 5. 存储函数 ...

  8. oracle 权限问题9017,[数据库]oracle学习笔记(一)用户管理_星空网

    oracle学习笔记(一)用户管理 2014-04-13 0 1 --oracle学习第一天 2 --连接 @后面连接数据库实例,具体连接到那个数据库 3 conn scott/tiger@MYORA ...

  9. 【Oracle】Oracle学习笔记

    [Oracle]Oracle学习笔记 目录 [Oracle]Oracle学习笔记 P1.Oracle数据库的安装和配置 P2.Oracle数据库管理 P3-0.初步SQL P3-1.基本SQL SEL ...

  10. oracle学习笔记 Oracle体系结构概述

    oracle学习笔记 Oracle体系结构概述 从这节开始,开始讲oracle数据库体系结构. 首先从总体上,从概述上把oracle整体的体系结构讲一下, 然后接下来的时间我们会一块一块的将oracl ...

最新文章

  1. Java多线程 - AQS详解
  2. 【java】java自带的java.util.logging.Logger日志功能
  3. ActionRequestValidationException[Validation Failed: 1: script or doc is missing
  4. 下载python后怎样打开-下载python后如何启动
  5. 【Mongodb】MongoDB
  6. hdu 3666 THE MATRIX PROBLEM 差分约束系统
  7. C语言中二维数组名与数组地址、首行地址、首行首元素地址关系与区别详解(初学者必须掌握)
  8. php类实例化js,php中如何实例化一个类_后端开发
  9. JS获取元素的第一个子节点
  10. c# winform窗体边框风格的设计
  11. 蒋涛:《Orange’S:一个操作系统的实现》属于真正Hacker的
  12. 虚拟机centOs Linux与Windows之间的文件传输
  13. 手机号码吉凶测试原理计算公式
  14. 怎么自己做淘宝优惠券的网站?看完这个你就全懂了
  15. spring注解@Lazy
  16. 透明图片怎么发给别人_怎么用秀米写公众号文章
  17. 号外号外!兹有第一届区块链技术及应用峰会(BTA)·中国首轮议题抢鲜看
  18. 网络出现异常(只能上QQ不能上网页)
  19. 初识HTML(五)进阶:CSS盒子模型、页面布局
  20. 必应词典软件案例分析

热门文章

  1. 【算法笔记+POJ3461】Oulipo(字符串hash模版)
  2. STM32——库函数版——RGB8x8全彩点阵程序
  3. 在C++上利用onnxruntime (CUDA)和 opencv 部署模型onnx
  4. 实心和空心哪个抗弯能力强_为什么轮胎不设计成实心的?不怕爆胎 480阅读
  5. python socketio web 端_使用flask-socketIO怎样讲json格式数据从服务器推送到前端?
  6. 响应式编程、反应式编程的简易教程-超赞演讲
  7. 猴子都能懂的数据库范式详解
  8. iphone 抹除设备是什么意思_环保设备公司什么意思?|危汇网|
  9. 上验证cudnn是否安装成功_ubuntu18.04 安装cuda、cudnn、tensorflow和pytorch其实很简单...
  10. Leetcode 344:Reverse String 反转字符串