oracle等待事件之free buffer waits
1.什么时候会发生free buffer waits呢? 简单来说,当需要在buffer cache中寻找可用块但是找不到时,就会发生这个等待。找寻可用块的理由包括读取数据块到内存中,或者构造CR块。SQL> select name,parameter1,parameter2,parameter3,wait_class from v$event_name
Oracle ASSM表空间存储结构
从Oracle 11gR2开始,每个数据文件的前128个块被Oracle留用,其中0-1号块为文件头,2-127号块是位图块,记录表空间中区的分配情况。test表空间是一个新建的表空间,里面有一张表ms1SQL> SELECT * FROM MS1; A----------
Oracle12c中空格引发的ORA-01516问题
2019年1月29日,zabbix显示一个索引表空间告警,所以登录服务器查看:10:02:22 SQL> col file_name for a5010:02:42 SQL> select file_id,tablespace_name,file_name,bytes/1024/1024/1024 G from  
利用systemstate dump trace文件寻找dg terminated原因
上午收到告警,一台dataguard宕机了。软件版本为11.2.0.4.登录上来首先查看alert文件.Fri Jan 25 11:00:39 2019System State dumped to trace file /u01/app/oracle/diag/rdbms/eracpdg01/ERAC/trace/ERAC_ora_42298.trcFri Jan 25
dbms_pclxutil.build_part_index包的用法
dbms_pclxutil.build_part_index包可以用来以并行的方式rebuild local index。包的来源文件是$ORACLE_HOME/rdbms/admin/dbmspclx.sql该sql文件中可以看到包的用法:procedure build_part_index ( jobs_per_batch in number d
oracle 12c之分区表不完全索引(二)
关于oracle 12c的不完全索引,这是第二篇,第一篇总体上描述了一下不完全索引,回顾地址:http://blog.itpub.net/31480688/viewspace-2285384/之前描述过,不完全索引的状态是否可用,取决于indexing为on,还是off。 本文主要论述如下:1. Indexing属性不变的情况下
行迁移对跨分区update效率的影响
测试目的:行迁移对跨分区update效率的影响。创建测试表create table ming.LICISITS_R(EID NUMBER(18) not null,EUTIME DATE default sysdate ,dynamicmap VARCHAR2(200) not null)PARTITION BY RANGE (EUTIME) INTERVAL (numtoyminte
Oracle12c之隐含参数_disable_file_resize_logging
新建了一个测试库向里面数据泵导入部分测试数据,这次导入的时候只导入约束include=constraint导入过程中alert日志一直在打印:2018-12-19T00:01:03.045147+08:00Resize operation completed for file# 2, old size 15486976K, new size 15589376KResize operation co
oracle 12c之分区表不完全索引(一)
有的分区表根据业务特点,热点数据只是最近几个月,甚至是当月数据,这时候在其他不活跃分区上建索引就显得浪费存储空间,对有的全局索引来说还会影响性能。oracle 12c中提供了只在部分分区上建索引的功能,不完全索引的出现,完美的解决了这个问题。 建一个分区表create table part1(id int, code int,name varchar2(100))indexing off
oracle 12c之PDB refresh
本文主要包括以下内容:1. 搭建refresh PDB2. 增量同步实验3. 手动refresh变为自动refresh4. 自动refresh变为手动refre
Oracle12.2c统一审计(unified auditing)六问
概述 统一审计体系是Oracle在12c推出的新的日志体系。12.1和12.2虽然都属于该体系,但是12.1与12.2版本相比,明显给人一种半成品的感觉。包括基表,删除行为等方面存在较大差异,有兴趣的可以去了解一下,本文主要以12.2讲述。1.什么是统一审计?2.如何检查统一审计是否开启?3.审计数据落盘策略是什么?4.如何将操作系统上的
Oracle12c新特性之自增列的实现
一.Mysql自增列众所周知,mysql有自增列功能。Mysql中每张表只能有一个自增列,并且自增列必须是主键或者唯一键。mysql> create table test2(id int not null auto_increment);ERROR 1075 (42000): Incorrect table definition; there can be onl
oracle 12.2将共享undo转为local undo的方法
本文主要讲述了:1.关于undo表空间share和local的看法2.修改undo为local undo的方法3.修改PDB$SEED属性的方法4.关于local undo转为share undo一.概述数据库从12.2版本开始,实现了undo表空间在cdb和pdb层面的隔离;并且local undo也是一些新特征性的基础,比如pdb refresh和pdb闪回。12.1版本还无法实现。不过这种资
间隔分区表的删除逻辑
本文主要讨论如下:1.间隔分区表的删除逻辑2.如何处理ORA-14758报错创建间隔分区create table t_interval( a DATE, b int, c int )PARTITION BY RANGE (a) INTERVAL (numtodsinterval(3,'day')) ( 
move分区表lob对象
创建分区表和索引create table t (a number(5), b varchar2(10), c number(5), d clob ) partition by range(a) (partition p1 values less than (50) tablespace users lob (d) store as (tablespace users),partition p2 v
oracle分区表的增量收集统计信息
分区表的增量统计信息收集分区表的统计信息存在global和partition级别两种。在收集分区表的全局统计信息的时候,不可避免的要对表的所有分区进行统计,但是由于表分区的初衷,不同分区数据变化情况很可能不一致。那么极容易出现有的分区统计信息是准的,有的分区是不准的,扫描所有分区必然造成资源多余消耗,增量收集统计信息功能就可以解决这个问题了。该功能只针对有变化的分区收集统计信息,然后将其与没有变化
oracle 12c新特性之在线移动数据文件
11g时是无法在线移动数据文件的,12c增强了移动数据文件的功能,不仅可以更改路径,还可以给数据文件改名。oracle 12c在线移动或更名数据文件语法案例:alter database move datafile '/opt/mingdbdata/data/tbs_test01.dbf' to '/opt/mingdbdata/data/MINGPDB1/tbs_test
oracle 11g移动数据文件到其他磁盘组
目标:将USERS表空间数据文件从RAC_DATA磁盘组移动到MING磁盘组。这里不用alter database move datafile那种方式,直接用rman copy,然后switch一下就可以了。首先修改数据库为归档模式SQL> alter system set log_archive_dest_1='LOCATION=/arch1' scope=spfile s
oracle sql优化之多列统计信息
本文讨论多列统计信息在CBO计算cardinality中的帮助创建测试表create table t1(id int,name varchar2(10),other varchar2(20));插入数据declarebeginfor i in 1..10000 loopinsert into t1 values(1,'A',dbms_random.string('u'
oracle12c新特性之APPROX_COUNT_DISTINCT函数
oracle 12c新特性之APPROX_COUNT_DISTINCT函数在进行sql优化时经常要统计某一列不同的值的个数,进而计算该列的选择性。但是在表体量很大,并且列上又没有索引时,count(distinct column)经常要花费很长的时间。12c提供了一个近似去重的新函数approx_count_distinct。这个函数的返回值是不准确的,不统计null值,但是胜在速度快。SQL&g