【YashanDB知识库】表数据量不多,lob数据段有大量空间,插入数据报错

2024-09-06 19:04

本文主要是介绍【YashanDB知识库】表数据量不多,lob数据段有大量空间,插入数据报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题现象

clob段异常增长,导致磁盘空间满,应用无法使用数据库。

问题风险及影响

lob段空间未复用,lob段空间扩张很大,影响磁盘占用合理分配。

空间不够,插入报错,影响业务。

问题影响的版本

所有版本

问题发生原因

lob类型删除后,空间不会立即复用,需要等待UNDO_RETENTION时间后,空间才会复用。

普通的数据类型表空间段,普通数据被删后插入到undo空间,删除后就可以复用。

lob数据因为太大,被删除后,lob自己就是一份undo数据,不插入到undo空间,所以需要保留undo_retention时间后,才能复用。

解决方式及规避方法

1、把tablespace的maxsize小于磁盘空间,按具体业务表大小配置,

2、undo_retention,如果业务插入数据频繁,且插入数据量多,建议配置小一些,按具体业务插入数据量。

3、如果插入数据量多,磁盘空间建议配置大些

问题分析和处理过程

表空间不够的表现

创建一个maxsize为3G的表空间,mydata,在该表空间创建表tmp1,该表有3个clob字段,如上。

做如下操作:

1、往tmp1表插入数据

2、delete table tmp1;

3、查看dba_segments视图mydata中的表空间段。

循环做上面3个操作,最后报错YAS-02007 no free extent in tablespace MYDATA,如下图所示:

img1

磁盘空间不够的表现

tablespace不做限制,磁盘空间满了之后,插入数据的表现

create tablespace mydata datafile ‘?/dbfiles/mydata’ size 20G autoextend on next 128M maxsize unlimited databucket ‘?/local_fs/mydata’;

如下,数据库变成abnormal状态,插入报错返回。

img3

解决方式,删掉一些日志或者不用的文档,释放空间,则能恢复。

这篇关于【YashanDB知识库】表数据量不多,lob数据段有大量空间,插入数据报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142858

相关文章

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二:

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

Pandas统计每行数据中的空值的方法示例

《Pandas统计每行数据中的空值的方法示例》处理缺失数据(NaN值)是一个非常常见的问题,本文主要介绍了Pandas统计每行数据中的空值的方法示例,具有一定的参考价值,感兴趣的可以了解一下... 目录什么是空值?为什么要统计空值?准备工作创建示例数据统计每行空值数量进一步分析www.chinasem.cn处

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

如何使用 Python 读取 Excel 数据

《如何使用Python读取Excel数据》:本文主要介绍使用Python读取Excel数据的详细教程,通过pandas和openpyxl,你可以轻松读取Excel文件,并进行各种数据处理操... 目录使用 python 读取 Excel 数据的详细教程1. 安装必要的依赖2. 读取 Excel 文件3. 读

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring