当前位置: 首页 > news >正文

数据库管理-第115期 too many open files(202301107)

数据库管理-第115期 too many open files(202301107)

这是我上周末帮朋友站台过程中处理的一个问题。

1 背景

其实这是别人搭的一个使用CentOS 7.8系统安装的一套11.2.0.4(无补丁)的双节点RAC,用于迁移以前运行在Solaris小机上的同版本数据库,当然这个迁移操作也不是我来做,我只是在迁移完成后看看数据库有没有啥问题。其实之前就帮忙过一次,把AMM从64G改到了200G(也不晓得256G的机器开那么低内存干啥)。这盘最大的问题其实是迁移过程中parallel没开,并行度就1,到了统计信息更新的时候就非常的慢(object有丢丢多),而且只剩下了统计信息和JOB(JOB也就几个)了,因此就尝试改了parallel并重启导入进程,结果挂了报了以下的错:

ORA-39097: Data Pump job encountered unexpected error -xxxx
ORA-39065: unexpected master process exception in DISPATCH
...

经过基本检查应该是dump相关组件出现了一些问题,因此就运行了下面的脚本进行处理:

@?/rdbms/admin/catmeta.sql
@?/rdbms/admin/catmet2.sql
@?/rdbms/admin/utlrp.sql

在执行完最后脚本后,发现集群数据库挂了,同时有一个节点都重启。检查告警日志就是一大把的:

too many open files

2 处理过程

首先统计信息和剩下的JOB就想着手工迁移了,但是得先处理跑utlrp.sql的问题,这个脚本是处理数据库的失效对象,会调用比较多的CPU线程,虽然CPU占用率不会上去,但是对操作系统压力也不小。数据库因为too many open files的问题造成关键进程挂掉引起数据库挂掉,crs进程也因为这个原因挂掉而重启操作系统。
经过多次尝试问题依旧,因此重新检查了sysctl.conf和limit.conf。首先grid和oracle的nofile限制soft是1024,hard是65535,就一般情况来说是足够的;而kernel.shmmax对应则大概是40G左右。查了一些相关资料做了一些调整:

/etc/sysctl.conf
kernel.shmmax=225485783040(210G,大于AMM配置的200G)/etc/security/limit.conf
oracle soft nofile 10240
oracle hard nofile 131070
grid soft nofile 10240
grid hard nofile 131070

完成后为避免异常,分节点重启了整个集群,然后再尝试执行utlrp.sql,多次尝试后没有再出现问题。同时utlrp.sql脚本的执行速度也比之前快。

3 怀疑

首先,就一般Oracle安装配置来说,是足够的,遇到too many open files的问题,结合没有打任何补丁,CentOS 7上11g的支持可能也不是太好,姑且当是一个bug吧。以后遇到装数据库,nofile还是都弄到40000(一体机是这么配置的),shmmax都整到内存80%以上。

总结

老规矩,知道写了些啥。

相关文章:

数据库管理-第115期 too many open files(202301107)

数据库管理-第115期 too many open files(202301107) 这是我上周末帮朋友站台过程中处理的一个问题。 1 背景 其实这是别人搭的一个使用CentOS 7.8系统安装的一套11.2.0.4(无补丁)的双节点RAC,用于迁移以前运行在So…...

一行命令让你的服务器命令行亮起来!!!!

if [ "$(whoami)" "root" ]; then echo "PS1${debian_chroot:($debian_chroot)}\[\033[01;32m\]\u\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]# " >> /root/.bashrc; source /root/.bashrc; echo "已为root用户设置提示符以#结尾…...

线性代数(二)| 行列式性质 求值 特殊行列式 加边法 归纳法等多种方法

文章目录 1. 性质1.1 重要性质梳理1.1.1 转置和初等变换1.1.2加法行列式可拆分1.1.3 乘积行列式可拆分 1.2 行列式性质的应用1.2.1 简化运算1.2.2 将行列式转换为(二)中的特殊行列式 2 特殊行列式2.1 上三角或下三角行列式2.2 三叉行列式2.3 行列式行和&…...

OpenCV入门7:图像形态学变换

形态学是一种针对图像形状和结构进行操作和分析的图像处理方法。在OpenCV中,提供了一些函数和方法用于执行形态学操作。下面将介绍一些常见的形态学操作及其在OpenCV中的实现方式。 膨胀(Dilation): 膨胀操作可以扩展图像中的边…...

Apache Storm 2.5.0 集群安装与配置

1、下载Apache Storm 2.5.0 https://mirrors.tuna.tsinghua.edu.cn/apache/storm/apache-storm-2.5.0/ 2、准备3台服务器 192.168.42.139 node1 192.168.42.140 node1 192.168.42.141 node2 3、配置host [rootnode1 ~]# cat /etc/hosts 127.0.0.1 localhost localhost…...

Android-将编码的base64图像,添加水印,转换成File存储到手机

一、将图片file转换成bitmap Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); 二、给图片添加水印 String[] content = new String[]{"纬度:" + latitude, "经度:" + longitude, "地址:" + signAddress, "时间:&…...

AI 绘画 | Stable Diffusion 图生图

图生图简介 Stable Diffusion 不仅可以文生图,还可以图生图。文生图就是完全用提示词文本去生成我们想要图片,但是很多时候会有词不达意的感觉。就像我们房子装修一样,我们只是通过文字描述很难表达出准确的想要的装修效果,如果能…...

Nat. Med. | 基于遗传学原发部位未知癌症的分类和治疗反应预测

今天为大家介绍的是来自Alexander Gusev团队的一篇论文。原发部位未知癌症(Cancer of unknown primary,CUP)是一种无法追溯到其原发部位的癌症,占所有癌症的3-5%。CUP缺乏已建立的靶向治疗方法,导致普遍预后…...

RocketMQ如何安全的批量发送消息❓

优点: 批量发送消息可以提高rocketmq的生产者性能和吞吐量。 使用场景: 发送大量小型消息时;需要降低消息发送延迟时;需要提高生产者性能时; 注意事项: 消息列表的大小不能超过broker设置的最大消息大小;消息列表…...

计算机视觉与深度学习 | 基于视觉惯性紧耦合的SLAM后端优化算法

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 基于视觉惯性紧耦合的SLAM后端优化算法 引言视觉惯性联合初始化非线性优…...

GDI+ 绘制透明图

目录 一、GDI+ 准备工作 1、线程中添加GDI+支持 2、Gdiplus::Bitmap 1)、从文件创建位图...

【Java】IntelliJ IDEA使用JDBC连接MySQL数据库并写入数据

目录 0 准备工作1 创建Java项目2 添加JDBC 驱动程序3 创建数据库连接配置文件4 创建一个 Java 类来连接和操作数据库5 运行应用程序 在 IntelliJ IDEA 中连接 MySQL 数据库并将数据存储在数据表中,使用 Java 和 JDBC(Java Database Connectivity&#xf…...

Linux Hadoop平台伪分布式安装

Linux Hadoop 伪分布式安装 1. JDK2. Hadoop3. MysqlHive3.1 Mysql8安装3.2 Hive安装 4. Spark4.1 Maven安装4.2 Scala安装4.3 Spark编译并安装 5. Zookeeper6. HBase 版本概要: jdk: jdk-8u391-linux-x64.tar.gzhadoop:hadoop-3.3.1.tar.gzh…...

【STM32-DSP库的使用】基于Keil5 + STM32CubeMX 手动添加、库添加方式

STM32-DSP库的使用 一.CMSIS-DSP1.1 DSP库简介1.2 支持的函数类别1.3 宏定义 二、操作2.1 STM32CubeMX 配置基本工程2.2 Lib库的方式实现(推荐)2.3 手动添加DSP文件(可以下载官方最新库,功能齐全) 三、MFCC测试DSP加速效果 为验证语音识别MFC…...

createElement的用法

目录 一:介绍 二:语法与例子 1、语法 2、一些例子 例1: 例2: 例3: 3、第二种写法 一:介绍 document.createElement()是在对象中创建一个对象,要与appendChild() 或 insertBefore()方法…...

Mabitys总结

一、ORM ORM(Object/Relation Mapping),中文名称:对象/关系 映射。是一种解决数据库发展和面向对象编程语言发展不匹配问题而出现的技术。 使用JDBC技术时,手动实现ORM映射: 使用ORM时,自动关系映射: &am…...

JAVA安全之Log4j-Jndi注入原理以及利用方式

什么是JNDI? JDNI(Java Naming and Directory Interface)是Java命名和目录接口,它提供了统一的访问命名和目录服务的API。 JDNI主要通过JNDI SPI(Service Provider Interface)规范来实现,该规…...

Spring源码系列-框架中的设计模式

简单工厂 实现方式: BeanFactory。Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但是否是在传入参数后创建还是传入参数前创建这个要根据具体情况来定。 实质: 由一个工厂…...

数据的读取和保存-MATLAB

1 序言 在进行数据处理时,经常需要写代码对保存在文件中的数据进行读取→处理→保存的操作,流程图如下: 笔者每次在进行上述操作时,都需要百度如何“选中目标文件”以及如何“将处理好的数据保存到目标文件中”,对这一…...

C++ 输入、输出和整数运算

【问题描述】 编写一个程序,读入两个整数,计算并输出他们的和、积、商和余数。 【输入形式】 程序运行到输入时,不要显示输入提示信息。 输入为两个整数(在问题描述中记作A和B,程序中请自定变量名),A和B使…...

终极Mod管理革命:如何用Reloaded-II在3分钟内告别传统Mod安装的烦恼?

终极Mod管理革命:如何用Reloaded-II在3分钟内告别传统Mod安装的烦恼? 【免费下载链接】Reloaded-II Universal .NET Core Powered Modding Framework for any Native Game X86, X64. 项目地址: https://gitcode.com/gh_mirrors/re/Reloaded-II Re…...

别再“为爱发电”了!企业做自媒体,这工具能让1万块花出10万块效果

最近有个热搜话题叫“企业做自媒体的坑”,下面几千条评论,几乎每一条都在诉苦。有人说投了十万块找博主,结果阅读量还没自己员工转发高;有人说联系媒体发稿,价格高不说,流程还得等一周,热点早就…...

Java低代码平台内核开发避坑指南(98%团队踩过的4类元数据一致性雷区)

更多请点击: https://intelliparadigm.com 第一章:Java低代码平台内核开发的核心挑战与元数据治理范式 在 Java 低代码平台构建中,内核并非仅是可视化拖拽逻辑的封装层,而是承载模型驱动、运行时动态编译、多租户隔离与策略化扩…...

Video-ChatGPT:从原理到实践,构建视频对话AI的完整指南

1. 项目概述与核心价值 最近在折腾多模态大模型,特别是视频理解这块,发现了一个挺有意思的项目:Video-ChatGPT。简单来说,它就是一个能“看懂”视频并和你聊天的AI。你给它一段视频,然后问它“视频里的人在干嘛&#…...

Viper配置优化工具:10个性能调优技巧终极指南

Viper配置优化工具:10个性能调优技巧终极指南 【免费下载链接】viper Go configuration with fangs 项目地址: https://gitcode.com/gh_mirrors/vi/viper Viper是Go语言中强大的应用配置系统,支持通过标志、环境变量、文件系统或远程键值存储等多…...

3步完成微信聊天记录永久备份:WeChatExporter完整使用指南

3步完成微信聊天记录永久备份:WeChatExporter完整使用指南 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 还在担心手机丢失或更换导致珍贵的微信聊天记录永远…...

告别CentOS 7默认gcc 4.8.5:保姆级源码编译升级gcc 5.2.0全记录(含依赖下载避坑指南)

告别CentOS 7默认gcc 4.8.5:保姆级源码编译升级gcc 5.2.0全记录(含依赖下载避坑指南) 在CentOS 7的生产环境中,默认安装的gcc 4.8.5版本已经无法满足现代C开发的需求。许多新特性如C14标准支持、更好的优化能力等,都需…...

操作系统内存管理实践:从物理页帧到kmalloc的完整实现

1. 项目概述:一个关于内存管理的操作系统实践最近在社区里看到不少朋友对操作系统的内存管理模块感兴趣,但苦于理论抽象,动手实践又不知从何开始。正好,我最近花了不少时间研究一个名为claw-memory-os的项目,它不是一个…...

这种口译项目不论按小时计费还是按分钟计费,口译员都被按地板摩擦,满打满算干一天收入还赶不上摆地摊卖凉粉。接这种项目的就不要自称译员了,这对不起你本科➕研究生几大年的时间,甚至大几十万出国留学,太尴尬了

这种口译项目不论按小时计费还是按分钟计费,口译员都被按地板摩擦,满打满算干一天收入还赶不上摆地摊卖凉粉。接这种项目的就不要自称译员了,这对不起你本科➕研究生几大年的时间,甚至大几十万出国留学,太尴尬了。你得…...

大模型---温度与其他采样方法

目录 1.温度的定义 2.温度和top-k、top-p的关系 参考论文:1904.09751 1.温度的定义 温度是模型解码阶段的一个采样参数:模型先为下一个 token 计算一组logits(大小为词表大小,logit表示词表中每个token的分数),再用温度把这组 logits 重新缩放,最后通过 softmax 得到…...