oracle管理
wanglipo
这个作者很懒,什么都没留下…
展开
-
Oracle诊断工具-RDA
Oracle诊断工具-RDA RDA是Remote Diagnostic Agent 的简称,是Oracle用来收集、分析数据库的工具,运行该工具不会改变系统的任何参数,RDA收集的相关数据非常全面,可以简化我们日常监控、分析数据库的工作。转载 2011-09-08 09:57:15 · 1005 阅读 · 0 评论 -
UNDO表空间的ORA-01110错误解决(一)
前一段时间解决了一个ORA-1122错误,正好本机的数据库环境由于Windows的自动重起,导致数据库无法打开,出现错误信息也是ORA-1122。这次出现错误的表空间是UNDO表空间。首先看一下问题,尝试打开数据库,则会报错:SQL> CONN /@TEST AS SYSDBA已连接到空闲例程。SQL> STARTUP MOUNTORACLE 例程已转载 2012-04-06 10:51:09 · 2036 阅读 · 0 评论 -
ORA-03113: end-of-file on communication channel
由于机房断电,数据库异常关机,启动时候提示 ORA-03113: end-of-file on communication channel 错误,整了一天终于把数据库启动起来,记录一下处理过程以备后用第一步骤: ORA-03113: end-of-file on communication channel http://www.eygle.c原创 2012-04-05 17:23:24 · 1271 阅读 · 0 评论 -
UNDO表空间的ORA-01110错误解决(二)
前一段时间解决了一个ORA-1122错误,正好本机的数据库环境由于Windows的自动重起,导致数据库无法打开,出现错误信息也是ORA-1122。这次出现错误的表空间是UNDO表空间。上一篇介绍了利用备份进行恢复的方法,这篇尝试重建UNDO表空间的方法。UNDO表空间的ORA-1122错误解决(一):http://yangtingkun.itpub.net/post/468转载 2012-04-06 10:51:50 · 4148 阅读 · 0 评论 -
Oracle中对用户所能使用的数据库资源进行限制
一、目的:Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用Create Profile命令创建一个Profile,用它来实现对数据库资源的限制使用,如果把该profile分配给用户,则该用户所能使用的数据库资源都在该profile的限制之内。二、条件:创建profile必须要有CREATE PROFILE的系统权限。为用户指定资源限转载 2012-03-20 14:15:01 · 5325 阅读 · 0 评论 -
Oracle 查看 对象 持有 锁 的情况
有关Oracle 锁的说明,参考:ORACLE锁机制http://blog.csdn.net/tianlesoftware/article/details/4696896用如下SQL 查看一下系统中相关对象上锁的情况:[sql] view plaincopyprint?name="code" class="sql">/* Formattedo转载 2012-06-08 11:09:10 · 764 阅读 · 0 评论 -
ORA-00600错误及其解决方案
ORA-00600错误及其解决方案错误描述:数据库版本:SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 -转载 2012-06-12 15:31:22 · 4536 阅读 · 1 评论 -
Oracle常用监控SQL
1.监控事例的等待:select event,sum(decode(wait_time,0,0,1)) prev, sum(decode(wait_time,0,1,0)) curr,count(*) from v$session_wait group by event order by 4;2.回滚段的争用情况:select name,waits,gets,waits/gets转载 2012-06-18 16:55:59 · 697 阅读 · 0 评论 -
oracle 一般手动巡检内容(转)
转自:http://space.itpub.net/22907091/viewspace-742689当手头没有 rda(remote diagnostic agent)工具时,dba 做的最多的的检查项目如下:一、巡检项目:1) 数据库session连接数select count(*) from v$session;2) 数据库的并发数select count(*) fr转载 2012-09-18 14:33:41 · 1622 阅读 · 0 评论 -
生产数据迁移EXPDP/IMPDP全过程技术步骤记录(转)
oracle数据库数据迁移方式有多种,重要的是要根据实际的条件和需求选择一种最合适的迁移方式,一味追求技术并非最佳的解决方案,在完成实际需求内容时也要避免将问题复杂化。此次生产数据迁移情况描述:由于硬件平台的更新,并伴随着操作系统、数据库版本的更新升级,数据库数据量约1TB,允许停机时间8小时。迁移方式选择了EXPDP/IMPDP方式。在测试过程中,发现IMPDP虽然加上parallel参数,转载 2012-09-18 14:22:34 · 8158 阅读 · 0 评论 -
oracle 查询sid 运行的sql语句
这是当前运行的sql语句select sid, v$session.username 用户名, last_call_et 持续时间, status 状态, LOCKWAIT 等待锁, machine 用户电脑名, logon_time 开始登入时间, sql_text转载 2012-10-16 10:55:21 · 8347 阅读 · 0 评论 -
Oracle表与索引的分析及索引重建
1.分析表与索引(analyze 不会重建索引)analyze table tablename compute statistics 等同于 analyze table tablename compute statistics for table for all indexes for all columnsfor table 的统计信息存在于视图:user_t转载 2012-11-21 09:15:09 · 791 阅读 · 0 评论 -
JOB执行时间不断推后的问题
工作中我们经常用Oracle的JOB执行一些定时任务,实践中我们发现,设定执行时间和间隔后,每次执行的时间都会有点延迟,经过一段时间后,推迟累计的效应就相当明显,必须要重新调整时间才能满足要求,为什么会出现这种现象呢?经过研究,我们发现了问题所在。下面举例说明这个问题。建立一个JOB,内容为插入系统时间到数据库,执行间隔为1分钟,即inteval是sysdate+1/(24*60),我们发现记转载 2012-11-26 10:12:22 · 2419 阅读 · 0 评论 -
监听无响应,同时发现两个Listener
环境:Linux 4.7 + Oracle 10g Version 10.2.0.1.0故障现象:[oracle@dbserv ~]$ lsnrctl statusLSNRCTL for Linux: Version 10.2.0.1.0 - Production on 25-JUN-2012 10:15:56Copyright (c) 1991, 2005, Oracle.All转载 2013-08-02 09:33:43 · 1005 阅读 · 0 评论 -
ORACLE存储过程和包管理(导出包内容,查询用到了哪些表等)
查看存储过程和包所使用的相关表。原创 2013-10-23 12:07:22 · 27452 阅读 · 0 评论 -
redo
1.1 redo 重做日志文件(redo log file)对Oracle数据库来说至关重要,它们是数据库的事务日志。Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文件。这两类重做日志文件都用于恢复;其主要目的是,万一实例失败或介质失败,它们就能派上用场。 如果数据库所在主机掉电转载 2012-03-14 09:11:14 · 940 阅读 · 0 评论 -
EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS (系统很慢大量读写操作)
最近在整理数据库备份,最近几天感觉机器速度好慢,查询发现有大量的IO操作,系统负荷高的离谱,最后,进过查询发现原来是一个系统JOB会没分钟运行一次,删除该JOB后,系统就恢复了正常,做个记录,以备有同样问题的网友使用 具体情况是这个样的: 1 系统大量IO操作,并不是SQL引起的 2 没有任何操作,也会IO很高原创 2012-03-30 18:13:51 · 5121 阅读 · 0 评论 -
oracle启动和关闭方式
启动过程:启动实例->装载数据库->打开数据库,与之对应的读取相应文件的顺序:参数文件->控制文件->数据文件 有以下几种启动方式: 1、startup nomount 非安装启动,只启动数据库实例,不装载数据库,不打开数据库,这是只读取参数文件,主要转载 2011-09-22 12:05:57 · 685 阅读 · 0 评论 -
oracle如何查询和停止正在运行的job
今天遇到一个问题,有一个JOB会一直不停的执行,不能按照设定的间隔来执行。通过查询相关资料发现原来如此: 当一个oracle job运行时返回一个error时,oracle会再次设法执行它,第一次尝试是在一分钟后,第二次是在2分钟后,第三次是4分钟后,以此类推。每次尝试的周期加倍,直到下一次的运行时刻来到,又再次尝试,当尝试执行失败16次时,oracle自动标示此job为br转载 2011-11-16 10:51:45 · 59972 阅读 · 0 评论 -
查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件
--1查看表空间已经使用的百分比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"fro转载 2011-11-23 10:07:24 · 12635 阅读 · 0 评论 -
DBA常用的一些SQL和视图
alterindex&index_name monitoring usage;alter index &index_name nomonitoring usage;select * from v$object_usage where index_name = &index_name;--求数据文件的I/O分布select df.name,phyrds,phywrts,phyblkr转载 2011-12-21 11:39:46 · 1152 阅读 · 0 评论 -
Oracle用户被锁定解决方法
1、用dba角色的用户登陆,进行解锁,先设置具体时间格式,以便查看具体时间SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';Session altered.2、查看具体的被锁时间SQL> select username,lock_date from dba_users where username='TES转载 2011-12-27 11:18:32 · 28472 阅读 · 1 评论 -
oracle 安装过程常见的几个错误与解决方法
错误问题1[oracle@nj15 database]$ ./runInstaller 正在启动 Oracle Universal Installer...正在检查安装程序要求...检查操作系统版本: 必须是redhat-3, SuSE-9, redhat-4, redhat-5, UnitedLinux-1.0, asianux-1 or asianux-2转载 2012-01-11 11:40:00 · 3954 阅读 · 0 评论 -
Oracle 发送邮件
调用执行代码begin procsendemail('hello', '新的邮件1', 'jhtchina@163.com', 'jhtchina@163.com', 'smtp.163.com',转载 2011-12-29 09:35:57 · 9797 阅读 · 4 评论 -
根据 dba_errors 制定 数据库报警邮件
一. dba_errors 表 官网对这个表的说明如下: ALL_ERRORS:describes the current errors on the stored objects accessible to the current user.DBA_ERRORS:describes the current errors on all stored objects in th转载 2011-12-29 09:44:39 · 1315 阅读 · 0 评论 -
Oracle中恢复被DROP掉表的方法
以前只知道Windows有个回收站,今天听说Oracle也有个回收站! 在Oracle中可能不小心会DROP掉一个表,如果没有定期做备份的话,将会带来很大的麻烦。如果有的情况下,每天的数据都很重要,而定期备份的周期又稍长,情况恐怕也不容乐观! 不过还好Oracle有个回收站,概念就跟Windows里的回收站一模一样。 比如有以下误操作:DROP TABLE d转载 2011-12-30 09:50:18 · 721 阅读 · 0 评论 -
查看数据库性能 常用SQL
---内存评估--缓冲区命中率select (1 - (sum(decode(name, 'physical reads', value, 0)) / (sum(decode(name, 'db block gets', value, 0)) + sum(decode(name, 'consistent gets', value, 0))))) *原创 2012-02-13 17:19:19 · 929 阅读 · 0 评论 -
Oracle关于日志文件基本操作
1.查询系统使用的是哪一组日志文件:select * from v$log;2.查询正在使用的组所对应的日志文件:select * from v$logfile;3.强制日志切换:alter system switch logfile;4.查询历史日志:select * from v$log_history;5.查询日志的归档模式:select dbid,nam转载 2012-02-24 11:47:00 · 3522 阅读 · 0 评论 -
大表创建索引
大表创建索引时间必定会很长,要是中途出错了就的重来,因此在大表上创建索引时,一定要注意了 1,表空间要够大,不要让其自动增长 2,创建索引需要排序,使用pga_aggregate_target,要把这个值尽量增大(2048m ,创建完了要改回原值alter system set pga_aggregate_target=500m; ); 3,如果内存不够,原创 2012-03-14 14:14:15 · 4406 阅读 · 0 评论 -
V$SESSION_LONGOPS
本视图显示运行超过6秒的操作的状态。包括备份,恢复,统计信息收集,查询等等。要监控查询执行进展状况,你必须使用cost-based优化方式,并且:l 设置TIMED_STATISTICS或SQL_TRACE参数值为true。l 通过ANALYZE或DBMS_STATS数据包收集对象统计信息。你可以通过DBMS_APPLICATION_INFO.S原创 2012-03-14 15:06:30 · 698 阅读 · 0 评论 -
oracle 重做联机日志文件 七步重建redo联机日志 五分钟重建redo日志重建
第一步:新建三个新的联机日志组:ALTER DATABASE ADD LOGFILE GROUP 4 ('/u01/app/oracle/oradata/redo11a.log', '/u01/app/oracle/oradata/redo11b.log') size 16M reuse;ALTER DATABASE ADD LOGFILE GROUP 5 ('/u01/app/oracl转载 2012-02-06 16:03:35 · 2820 阅读 · 0 评论 -
查询oracle比较慢的session和sql
--查询最慢的sqlselect * from (select parsing_user_id,executions,sortscommand_type,disk_reads,sql_text from v$sqlarea order by disk_reads desc)where rownum --查询对应sessionselect SE.SID,S转载 2014-08-31 18:52:40 · 994 阅读 · 0 评论