修改日志文件的一次记录
来源:互联网 发布:易驱线 硬盘盒 知乎 编辑:程序博客网 时间:2024/06/09 20:31
这几天发现一个存储过程在执行的时候耗费了半小时时间,按照平时经验类似于这种状况只需要几分钟的事情;于是就监控一下,发现control file parallel write 消耗的
时间很长;在网上查找资料说是日志文件切换频繁;于是就查看日志文件情况:
SELECT * from v$log;
SELECT * from v$logfile;
发现一共有三组日志,每组有一个成员,每个成员50M,在同一个目录(磁盘)下,在bdump中的alter_orcl_log 发现有很多的警告日志,并且间隔几秒钟,如:
查询语句:两种方法
(pl/sql中)
--查看日志切换情况
SELECT SEQUENCE#,
FIRST_CHANGE#,
TO_CHAR(FIRST_TIME, 'yyyy-mm-dd hh24:mi:ss') FIRST_TIME,
SWITCH_CHANGE#
FROM V$LOGHIST
WHERE FIRST_TIME > TO_DATE('2013-01-08 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND FIRST_TIME < TO_DATE('2013-01-08 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
ORDER BY 1 DESC;
--汇总查看
SELECT TO_CHAR(FIRST_TIME, 'yyyy-mm-dd') DAY1, COUNT(*)
FROM V$LOG_HISTORY
WHERE FIRST_TIME >= TO_DATE('2013-01-01', 'yyyy-mm-dd')
GROUP BY TO_CHAR(FIRST_TIME, 'yyyy-mm-dd')
ORDER BY 1;
(linux系统中)
查看文件alert_orcl.log 的最后100行
# cat alert_orcl.log | tail -n 100
结果:
Tue Dec 25 10:43:27 2012
Thread 1 advanced to log sequence 49040 (LGWR switch)
Current log# 1 seq# 49040 mem# 0: /oracle/oradata/orcl/redo01.log
Tue Dec 25 10:43:43 2012
Thread 1 cannot allocate new log, sequence 49041
Checkpoint not complete
说明日志切换频繁,并且出现等待事件;
于是就准备添加日志组文件(为了减少I/O竞争,把日志组创建在不同目录(磁盘)上):
ALTER DATABASE ADD LOGFILE GROUP 4'/usr/oraclelogfile/redo04.log' SIZE 200 M
ALTER DATABASE ADD LOGFILE GROUP 5 '/usr/oraclelogfile/redo05.log' SIZE 200 M
ALTER DATABASE ADD LOGFILE GROUP 6 '/usr/oraclelogfile/redo06.log' SIZE 200 M
然后切换日志 ALTER SYSTEM SWITCH LOGFILE ,把当前日志切换到刚创建的日志组上,然后ALTER SYSTEM CHECKPOINT 把active状态的日志组转换为
inactive ,这样就可以把原来的日志组删掉:ALTER DATABASE DROP LOGFILE GROUP 1 ;ALTER DATABASE DROP LOGFILE GROUP 2 ;ALTER DATABASE DROP LOGFILE GROUP 3 ;
然后在观察原来的存储过程,发现5分钟搞定。
- 修改日志文件的一次记录
- JAVA反射机制-工作中的一次运用-记录修改日志
- 每隔一小时生成一个新的日志文件,当寄存器状态发生变化记录一次
- 记一次rsyslog日志记录失败的解决过程
- 一次修改mysql的root密码的记录
- 基类、接口的应用——表单控件:一次添加、修改一条记录,一次修改多条记录。(上)
- 简单记录一次REDO文件损坏报错 ORA-00333重做日志读取块出错
- 记录log日志文件的工具类
- 用C实现日志文件的记录
- 一次关于loback日志无法输出到文件的问题解决
- 记一次log4j日志写到错误文件的问题
- 记录一次core文件调试
- 自定义日志记录文件
- 双文件日志记录
- 简单日志记录文件
- 记录日志文件TraceLog
- c#日志记录文件
- 记录日志到文件
- android开发
- 阅读HEVC源代码(三)--SyntaxElementWriter极其相关类
- 动态设置报表中的文本框内容
- ext combobox取值
- DirectFB的接口详解
- 修改日志文件的一次记录
- C#(event)事件
- 2012年回首
- Hadoop使用常见问题以及解决方法 .
- $Set修改器
- emacs支持php语法高亮
- ORA-01030权限不足
- android 数据库部分操作
- 由android:process引发的内存限制的问题