iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >怎么解决关于数据库insert问题
  • 114
分享到

怎么解决关于数据库insert问题

2024-04-02 19:04:59 114人浏览 八月长安
摘要

本篇内容主要讲解“怎么解决关于数据库insert问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决关于数据库insert问题”吧!早上对几个10几G,上

本篇内容主要讲解“怎么解决关于数据库insert问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决关于数据库insert问题”吧!

早上对几个10几G,上亿的大表进行分区改造,一切都正常。到中午吃饭前对一个10万数据的小表进行插入时出问题了,很简单的插入语句,跑了1个小时没跑完。

插入语句如下,由于保密缘故,相关信息已做修改:

insert into SGS.PROD_NEW
  select *
    from SGS.PROD
   where CREATE_TIME >= to_date('2019-01-01', 'yyyy-mm-dd')
     and CREATE_TIME < to_date('2020-07-01', 'yyyy-mm-dd');

这张表大概10万行数据,没有主键,没有索引

set linesize 200;
col owner for a20;
col table_name for a40;
col tablespace_name for a20;
select owner, table_name, num_rows,TABLESPACE_NAME
  from dba_tables
 where table_name = 'PROD';
 
OWNER                TABLE_NAME                                 NUM_ROWS TABLESPACE_NAME
-------------------- ---------------------------------------- ---------- --------------------
SGS                  PROD                                     107220      GC_TS

表的大小60M左右:

sql> select bytes/1024/1024 MB from dba_segments where segment_name='PROD';
        MB
----------
        59

第一次表插入时,跑了1个小时没跑完,看了下等待事件,一直都是direct path read,也没有阻塞,为什么那么慢,看了下执行计划是走的全表扫描,执行计划没有问题:

------------------------------------------------------------------------------------------------------
| Id  | Operation                | Name                      | Rows  | Bytes | Cost (%CPU)| Time     |
------------------------------------------------------------------------------------------------------
|   0 | INSERT STATEMENT         |                           |       |       |  2027 (100)|          |
|   1 |  LOAD TABLE CONVENTIONAL | PRODNEW                   |       |       |            |          |
|*  2 |   TABLE ACCESS FULL      | PROD                      |   106K|    67M|  2027   (1)| 00:00:01 |
------------------------------------------------------------------------------------------------------

干脆停掉,开并行跑。开了16个并行跑插入,跑了半个小时还是卡在那,同样的等待事件。百思不得其解,想到了是不是统计信息过期了,但是这个表没有索引,统计信息过不过期都是走全表扫描。想到了buffer cache太小,但是我前面上亿的数据也能插进去,按理说不可能。想到了是不是temp表空间太小的缘故,查了下,32G,使用率0.01%。

浑水摸鱼1个小时后,想到了有没可能是大字段导致的呢?查了下,果然,MMP,有一个CLOB类型字段100G的大小。

SQL> select bytes/1024/1024/1024 GB from dba_segments where segment_name in (select segment_name from dba_lobs where table_name='PROD');  
        GB
----------
.000061035
104.680664

最后的解决办法:

开16并行,将时间段拆分为1个月一个月插。最后有点注意的是,表空间要足够大。

到此,相信大家对“怎么解决关于数据库insert问题”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么解决关于数据库insert问题

本文链接: https://www.lsjlt.com/news/62865.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么解决关于数据库insert问题
    本篇内容主要讲解“怎么解决关于数据库insert问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决关于数据库insert问题”吧!早上对几个10几G,上...
    99+
    2024-04-02
  • 关于IDEA关联数据库的问题
    IDEA关联数据库 首先打开一个IDEA工程,在右边可以看到Database一个按钮,点击。 如上这个界面,点击加号 选择Data Source,选择数据库类型,我这里使用的是M...
    99+
    2024-04-02
  • 关于SpringBoot mysql数据库时区问题
    寻找原因 后端开发中常见的几个时区设置 第一个设置点配置文件 spring.jackson.time-zone 第二个设置点 高版本SpringBoot版本 mysql-connec...
    99+
    2024-04-02
  • 怎么解决数据库ORA-00837问题
    本篇内容介绍了“怎么解决数据库ORA-00837问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 解决...
    99+
    2024-04-02
  • 怎么解决数据库变慢问题
    这篇文章主要介绍“怎么解决数据库变慢问题”,在日常操作中,相信很多人在怎么解决数据库变慢问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决数据库变慢问题”的疑惑有所帮...
    99+
    2024-04-02
  • 怎么解决数据库ERROR 2003问题
    这篇文章主要介绍“怎么解决数据库ERROR 2003问题”,在日常操作中,相信很多人在怎么解决数据库ERROR 2003问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么...
    99+
    2024-04-02
  • postgresql之关于to_date()问题怎么解决
    这篇文章主要介绍“postgresql之关于to_date()问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“postgresql之关于to_date()问题怎么解决”文章能帮助大家解决问...
    99+
    2023-07-05
  • 关于Docker部署postgresql数据库的问题
    环境 Centos-7 Postgresql-10 docker-19 yum加载Postgresql yum install https://download.postgresql...
    99+
    2024-04-02
  • 关于mysql数据库连接编码问题
    前几天使用springboot做一个数据库查询功能,发现使用中文就无法查到数据,经过测试SQL语句是没有问题的,但是就是查询不到数据,一直显示为null。 后来,我灵机一动尝试了一下查询参数改为英文,显示出查询结果是正常...
    99+
    2023-04-14
    mysql数据库 mysql编码
  • 怎么解决数据库LATCH:ROW CACHE OBJECTS问题
    这篇文章主要讲解了“怎么解决数据库LATCH:ROW CACHE OBJECTS问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决数据库LATCH:...
    99+
    2024-04-02
  • mysql跨数据库join问题怎么解决
    在MySQL中,跨数据库进行JOIN操作可以通过在JOIN查询中指定数据库名和表名的方式来实现。具体方法如下: 1.使用完全限定表名...
    99+
    2024-04-22
    mysql
  • Oracle数据库rm -rf问题怎么解决
    本篇内容主要讲解“Oracle数据库rm -rf问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle数据库rm -rf问题怎么解决”吧!事故背景安排一个妹子在一台生产服务器上安...
    99+
    2023-06-02
  • LINQ映射数据库问题怎么解决
    这篇文章主要讲解了“LINQ映射数据库问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“LINQ映射数据库问题怎么解决”吧!LINQ映射数据库Linq映射数据库文件中常有 priva...
    99+
    2023-06-17
  • 怎么解决php insert mysql乱码问题
    本篇内容介绍了“怎么解决php insert mysql乱码问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php insert mysq...
    99+
    2023-06-22
  • 怎么解决数据库ORA-12519 TNS问题
    这篇文章主要讲解了“怎么解决数据库ORA-12519 TNS问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决数据库ORA-12519 TNS问题”...
    99+
    2024-04-02
  • 关于MybatisPlus配置双数据库驱动连接数据库问题
    最近项目中需要用到2种数据库驱动连接数据库,下面我们基于MybatisPlus实现一下 具体实现 1、在pom.xml中添加如下依赖: <properties> ...
    99+
    2024-04-02
  • 关于DVWA创建数据库遇到的问题
    在DVWA创建数据库时相比大家可能会遇到意想不到的问题,接下来我来说明一下我自己时遇到的问题及解决方法,希望给大家提供一些参考。 问题如下: “Could not connect to the MySQL service. Pleas...
    99+
    2023-09-04
    mysql Powered by 金山文档
  • 关于mongoDB数据库添加账号的问题
    1. 以管理员运行powershell 2. mongo 连接服务器 (需要开启服务器) // 开启mongodb 服务 net start mongodb // 连接数据库 mon...
    99+
    2024-04-02
  • 怎么解决数据库报错ORA-16184问题
    本篇内容介绍了“怎么解决数据库报错ORA-16184问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!报错...
    99+
    2024-04-02
  • 怎么解决数据库报错-bash: ulimit问题
    这篇文章主要讲解了“怎么解决数据库报错-bash: ulimit问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决数据库报错-bash: ulimi...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作