基础
文章平均质量分 77
Banbrick
这个作者很懒,什么都没留下…
展开
-
查询用户所有的表
相关视图 user_tables:当前用户创建的表 all_tables:当前用户拥有权限的表 dba_tables:数据库所有的表,拥有DBA权限或者SYS用户授权才能访问 示例 1,使用sys用户连接数据库,创建两个用户,分别授予DBA和普通权限 [oracle@rac1 ~]$ sqlplus / as sysdba SQL*Plus:原创 2016-12-08 13:16:25 · 678 阅读 · 0 评论 -
查询表定义
查看表结构 SQL> desc admin_czrk Name Null? Type ----------------- -------- ------------ XM VARCHAR2(20) SFZH VARCHAR2(18) 查看表定义 SQL> select DBMS_METADATA.GET_DDL('TABLE','ADMIN原创 2016-12-08 16:05:40 · 545 阅读 · 0 评论 -
consistent gets
前段时间在测试高级压缩在IO方面性能的时候发现一个疑问,先看看当时的场景 SQL> select table_name,num_rows,blocks from user_tab_statistics where table_name in('COMTAB' ,'NOCOMTAB'); TABLE_NAME NUM_ROWS BLOCKS -------------------原创 2016-12-13 14:10:22 · 686 阅读 · 0 评论 -
索引负面影响测试
什么是索引 索引是为了提供更好的查询性能,通过更少的IO查找同样的数据,索引的性能参照就是全表扫描,oracle按照执行计划在表中查找数据只有全表扫描和索引这两种方式,这两种方式没有好坏之分,只有适不适合 索引负面影响 1,索引要额外占据存储空间,这个额外空间并不小 SQL> create table test as select * from dba_objects; Table cr原创 2016-12-14 16:07:16 · 546 阅读 · 0 评论 -
组合索引
回忆 记得刚工作的第一年,在一个市级政府部门驻场,一开发的哥们凑过来问我 “兄弟,我那个页面查询数据有点慢,帮我整整呗” “查的啥?SQL给我瞧瞧” “常口的,就是根据身份证号码和姓名去查,有时候一个条件,有时候会有两个条件,咋整?” “额,我先看看,完事叫你” 然后套路就来了,身份证和姓名分别建索引,这样任意一个条件都不慌,再加一个身份证和姓名的组合索引,这样两个一起查也不慌,索引建原创 2016-12-15 09:51:57 · 449 阅读 · 0 评论 -
索引选择性 集群因子 高度
选择性 索引列上不同值的个数决定索引的选择性,索引选择性越高,索引值平均返回的行数就越少,使用索引的成本也就越低,主键或者唯一约束列选择性是最高的,在索引的叶块上,每个索引值只对应一个rowid,所以在主键列上使用索引查找数据效率很高,其他的,类似性别、名族等字段,选择性就很低,每个索引值可能对应很多rowid,在这些列上使用B树索引查找往往效率不高,比如性别,只有男,女,未知三个值,针对男或者原创 2016-12-16 09:25:29 · 745 阅读 · 0 评论 -
DML操作对索引的影响
由于表上索引的存在,对索引列的DML操作会受到影响,另一方面,列上的索引,由于DML操作也会影响索引的性能,通俗点说,这俩就是互相伤害,索引对DML操作的影响之前已经写过了,这里主要看下DML操作对索引的影响。 delete操作 delete是对整行数据的操作,只要有索引存在,都会被影响,delete删除数据的同时,索引叶块上对应的索引条目也会被打上删除标记,类似于逻辑删除,也就是说索引条目并原创 2016-12-19 13:53:50 · 941 阅读 · 1 评论