通过dba_hist_*来进行诊断
在Oracle10g中增加了dba_his_*类统计信息表,在瓶颈时间过时了的时候,可以参考这些表来诊断瓶颈来源。 1、确定时间段: select * from dba_hist_snapshot where snap_id between &snapid1 and &snapid2 order by end_interval_time; 例如以上&snapid1 and &snapid2的值分别为10910 and 10913 2、对瓶颈时间段的等待时间进行汇总排序: select event,count(*) from dba_hist_active_sess_history where snap_id between 10910 and 10913 group by event order by
Oracle临时表空间查看、添加临时表空间数据文件、修改默认临时表空间 方法!
--查表空间使用率情况(含临时表空间)SELECT d.tablespace_name "Name", d.status "Status", TO_CHAR (NVL (a.BYTES / 1024 / 1024, 0), '99,999,990.90') "Size (M)", TO_CHAR (NVL (a.BYTES - NVL (f.BYTES, 0), 0) / 1024 / 1024, &nbs...
ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据
情况一:将备份的一个大数据库还原到本机以后,删除里面的大表(比如文件表、日志表等),Oracle数据文件在有数据的情况下能自动扩展,却不能自动收缩,造成存储空间的浪费。如果直接修改数据文件的大小,可能会遇到如下错误:ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据情况二:发现表空间剩余80%,故想收缩...
使用awk批量杀进程的命令
在做系统运维的过程中,有时候会碰到需要杀掉某一类进程的时候,如何批量杀掉这些进程,使用awk命令是很好的选择。ps -ef|grep aaa|grep -v grep|awk '{print "kill -9" $2}' |sh1.ps -ef|grep aaa|grep -v grep这是大家很熟悉的命令,这里就不再多说,就是从当前系统运行的进程的进程名中包含aaa关键字的进程。2.后面...
怎么删除表空间中某一个数据文件?
怎么删除表空间中某一个数据文件?9i 里肯定是不能删掉的, 可以resize 到<=5个数据块, oracle就不会向里面写东西了.10g 好像可以,没试过============================本文主要介绍如何从数据库中删除数据文件。因为A...
Oracle 监听日志文件过大,导致监听无法启动
今天一个测试库宕机了,Oracle数据库重启之后,监听一直启动不了,执行lsnrctl start 或 lsnrctl status 命令 一直卡在这一步:lsnrctl statusLSNRCTL for Linux: Version 10.2.0.5.0 - Production on 09-APR-2013 15:14:39Copyright (c) 1991, 2010, Oracle. All rights reserved.Connecting...
【AWR】调整AWR数据采样时间间隔及历史快照保留时间
1.AWR默认的采样间隔和历史快照保留时间默认是保留七天,采集间隔是1小时,这个信息可以从DBA_HIST_WR_CONTROL视图中获得。sys@ora10g> col SNAP_INTERVAL for a20sys@ora10g> col RETENTION for a20sys@ora10g> sel...
oracle 内存分配和调优 总结
一直都想总结一下oracle内存调整方面的知识,最近正好优化一个数据库内存参数,查找一些资料并...
Oracle之内存结构(SGA、PGA)
一、内存结构SGA(System Global Area):由所有服务进程和后台进程共享;PGA(Program Global Area):由每个服务进程、后台进程专有;每个进程都有一个PGA。二、SGA包含实例的数据和控制信息,包含如下内存...
表、索引、表空间的回收
说明:数据库运行一段时间后,需要对数据库进行归档的操作; 数据库归档完成后,需要对表和索引进行收缩才能真正的提高整个系统的运行效率。 如果需要对数据库的表空间进行回收,还需要对数据文件进行rsize的操作; 详细操作步骤: 一、表和索引的收缩 1、查看需要进行收缩的对象(查看某个表空间下面,可回收空间超过1...
通过操作系统的进程号查看数据库的session
在工作中很多新手会遇到这种问题,就是操作系统显示有个PID占用的CPU很高,导致整个系统运行很慢, 同时又不敢轻易的对这个PID进行KILL操作,很是头疼。 今天就和大家分享下,怎么通过操作系统的PID查找相应的数据库session和语句。 第一步:通过可以通过操作系统的PID查找数据库的v$process进程,语句如下: select ...
session和v$session说明
1、前言 v$session和v$process两个视图作为数据库管理了解系统性能、分析系统原因最常用的视图,因此作为一名非菜鸟的DBA管理员,就需要对这两个视图有充分的了解; 2、概念 首先必须了解什么是session:通俗来讲,session 是通信双方从开始通信到通信结束期间的一个上下文(context)。这个上下文是一段位于服务器端的内...
v$process深入了解
前言: process:这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.此外,共享服务器进程与调度进程的数目也被计算在内.因此,在专用服...
online redo log的日常管理
前言: Oracle online redo log是Oracle数据库中核心文件之一。在数据库操作中,只要有任何的数据块变化,都会生成相应的redo entry。保证所有的记录先写入redo log后才能写入到数据文件; 说明: v$log是进行数据库维护的一个重要视图,该...
主键和唯一索引的区别
前言: 作为一个非开发出身的DBA刚开始对数据库的主键、外键等一系列的词很是困惑,到后面对主键(primary key)和唯一索引(Unique Index)又迷糊了很久,后面终于陆续整理清楚了,总结和大家分享下; 一、相似之处创建主键的同时会创建一个唯一索引;二、区别主键是一种约束,目的是对这个表的某一列进行限...
ORACLE物化视图入门
一 前言: 物化视图作为sql调优的高级技术,也是进行数据仓库调优的利器之一,总而言之这个技术还是比较炫的,也是比较少的能够在老板面前露一手的技术之一,很有必要了解一番; 二 概念: 视图是一个虚拟表(也可以认为是一条语句),基于它创建时...
珍藏:经常用的表空间查询语句
分享几个平时工作中比较常用的几个表空间查询的脚本: 1、常看表空间的使用情况SELECT a.tablespace_name, total, free,(total - free), ROUND((total - free) / total, 4) * 100 FROM (SELECT tablespace_name, ROUND(SUM(bytes) / (1024 * 1024), 4) free  ...
ORACLE 参数文件pfile和spfile的介绍
一 、前言: ORACLE有很多重要的文件:监听文件、控制文件、密码文件、参数文件,其中控制文件和参数文件最为重要,因为如果没有这两个文件,那么数据库连启动都有问题; 本文档介绍最重要的文件之一参数文件,其他的文件也会在以后的文档中一 一介绍。 二 、文件介绍:&nb...
物化视图的快速刷新测试与物化视图日志
前言:一般在创建物化视图的时候,在数据量不大的时候,刷新的方式都是采用完全刷新的。随着系统的使用一些物化视图的源表的数据量在不断的增长,原本采用完全方式几秒就能刷新完成的物化视图,现在需要等待很久的时间才能刷新完成。其实物化视图从一开始就帮我们想好了解决方法:通过物化视图日志来实现物化视图的快速刷新...
物化视图加DBLINK实现数据的同步_20170216
【业务场景】需要把生产的ERP系统上面的一个表的数据抽取到另外一个报表的数据库里面,公司内部是没有ESB的平台,考虑到整个需求的紧急程度和对效率的要求,建议采用物化视图+DBLINK的方式来实现数据的同步;【环境说明】数据库的版本:11.2.0.3数据的流向:DB1为源数据库,DB2为目标数据库源表:EMP,该表包含主键EMPNO目标...