今天处理了一个很有意思的故障问题,来龙去脉是这种:

客户来电咨询控制文件无法扩展,数据库仅仅能查询但不支持DML,须要远程支持。接到电话的第一反应就是CONTROL_FILE_RECORD_KEEP_TIME參数是不是设置太小了,由于这套数据库的备份保留时长达60天。

远程以后,首先查看控制文件视图:

换算以后,当前控制文件也就25M左右。假设各位网友有心的话,应该会有印象在HACMP+RAC+RAW架构下。控制文件通常都是126M或256M。当前值才25M,并且是ASM能够自己主动扩展。于是就认为奇怪了

再建測试表做验证:

建表语句hang住了

此时检查数据库的alert日志:

原来数据库仅仅能查询但不能DML的原因跟”控制文件无法扩展“没关系,肯定是因为归档路径满了,导致数据库hang住,等待在线日志归档

以下验证该想法:

归档文件夹也在DATA磁盘组

显示DATA磁盘组当前仅仅有68M可用空间

到这里,问题根源已经算是找到,解决方法:

连接到RMAN,删除归档日志

delete noprompt archivelog all completed before 'sysdate-2';

再查询磁盘组使用率:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcm9ibzIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

剩余35G可用空间,此时应用恢复正常。

启发:

终于的问题解决方法很easy,可是想分享的是处理问题的思路:当接到问题的时候,要先从客户了解一下所遇到的问题,但记得对客户所提供的线索做一一验证。避免客户信息给我们诊断问题提供了错误方向,由于客户得到的信号源本身就是错误的,就像这个案例中,客户也是远程开发project师打电话误报“控制文件无法扩展"的。

-------------------------------------------------------------------------------------------------

本文来自于我的技术博客 http://blog.csdn.net/robo23

转载请标注源文链接,否则追究法律责任!

DML语句报错是因为控制文件无法扩大还是另有原因?的更多相关文章

  1. (转)android import library switch语句报错case expressions must be constant expressions

    今天当我从github上下载一个工程,并把它的库文件导入eclipse中,发现switch语句报错case expressions must be constant expressions : 解决方 ...

  2. SQL Server中事务transaction如果没写在try catch中,就算中间语句报错还是会提交

    假如我们数据库中有两张表Person和Book Person表: CREATE TABLE [dbo].[Person]( ,) NOT NULL, ) NULL, ) NULL, [CreateTi ...

  3. mysql5.7执行sql语句报错:In aggregated query without GROUP BY, expression #1 of SELECT list contains nonagg

    mysql5.7执行sql语句报错:In aggregated query without GROUP BY, expression #1 of SELECT list contains nonagg ...

  4. 解决Mysql搭建成功后执行sql语句报错以及区分大小写问题

    刚搭建完mysql 8.0以后会: 一.表区分大小写, 二.执行正确的sql语句成功且会报:[Err] 1055 - Expression #1 of ORDER BY clause is not i ...

  5. SQL语句报错(一)

    SQL语句报错(一) 1.具体报错如下: ORA-01861:文字格式字符串不匹配 01861. 00000 - "literal does not match format string& ...

  6. 数据库查询语句报错-ORA-00911: invalid character

    数据库查询语句报错-ORA-00911: invalid character 根据自己经验总结下: 1.都是分号惹的祸,有时候sql语句后面有分好导致这种错误 2.还有一种是从别处copy过来的sql ...

  7. 【spring boot jpa】hql语句报错 :antlr.NoViableAltException: unexpected token: roleName

    使用场景:在spring data jpa下使用@Query("hql语句") 然后在项目启动的时候报错 hql语句报错:antlr.NoViableAltException: u ...

  8. shell脚本if判断语句报错[: too many arguments的两种原因

    shell脚本,if判断语句报错[: too many arguments 我遇到过两种情况: 1.第一中情况就是网上大家说的,字符串变量中可能存在空格,shell解析时将其认为是多个参数,再进行判断 ...

  9. 连接数据后,当执行查询语句报错:ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询

    参考博客:http://blog.csdn.net/lanchengxiaoxiao/article/details/40982771 1.在cmd窗口通过sqlplus连接数据库 C:\Users\ ...

随机推荐

  1. Solr 搜索功能使用

          http://wiki.apache.org/solr/SolrQuerySyntax  http://www.solrcn.com/index.php?s=查询 

  2. mysql的grant用法(转)

    GRANT USAGE ON *.* TO 'discuz'@'localhost' IDENTIFIED BY PASSWORD '*C242DDD213BE9C6F8DA28D49245BF69F ...

  3. ffmpeg command

    1. 列出当前系统的设备列表 ffmpeg -list_devices true -f dshow -i dummy 2. 列出设备Integrated Camera的信息 ffmpeg -list_ ...

  4. django-1.11.3 源码详解 -- 0001 django-admin.py 的调用逻辑

    django-admin是django的命令行接口.可以用它来创建工程(startproject) .创建app(startapp).它里面又是怎么写的呢? 一.django-admin.py 的内容 ...

  5. unity, mono断点

    在unity编辑器中点运行后,如果直接在mono中打断点是不起作用的,需要再点击mono的run按钮,此时弹出Attach to Process对话框,如图: 选中其中的Unity Editor (U ...

  6. C语言复杂声明解读简明方法

    //char (*(*x[3])())[5];//x是什么类型的变量? // //分析C语言声明,关键是搞清楚这个变量是个什么东西(函数.指针.数组), //是函数那么剩下的就是他的参数和返回值, / ...

  7. Machine Learning—The k-means clustering algorithm

    印象笔记同步分享:Machine Learning-The k-means clustering algorithm

  8. django中ModelForm save方法 以及快速生成空表单或包含数据的表单 包含错误信息

    django中ModelForm学习系列一~save方法 Model代码 from django.db import models # Create your models here. class P ...

  9. Spring Mvc中DispatcherServlet和Servlet的区别小结

    在web开发过程中开始接触的是servlet,用来处理用户请求.这几年随着spring 框架越来越成熟,几乎成了java web开发界的主流框架.既然这么受欢迎肯定有它的优点,spring框架在原来的 ...

  10. xeno 实时性能测试 系统时钟1秒100个tick再测试

    root@sama5d3-linux:/usr/bin ./latency -t0 -T25 -p100                            == Sampling period: ...