首页 > 数据库 >Oracle impdp使用content=data_only会阻塞其他会话DML操作

Oracle impdp使用content=data_only会阻塞其他会话DML操作

时间:2023-01-12 15:15:18浏览次数:41  
标签:SYS impdp 14 DML content only data

 

Oracle impdp使用content=data_only会阻塞其他会话DML操作

 

上篇提到了insert /*+ append */ into会对表持有LOCKED_MODE=6的TM锁,导致其他对该表的DML都会被阻塞。

实际上impdp如果使用了content=data_only也是有同样的问题,同样的LOCKED_MODE=6的TM锁。   会话1,在OS用impdp导入数据,并且content=data_only:
[oracle@dev-testdb 20230110]$ impdp \' / as sysdba \' directory=dir20230110 dumpfile=zkm.dmp logfile=append_test.log cluster=n content=data_only tables=zkm.t1

Import: Release 11.2.0.4.0 - Production on Thu Jan 12 15:00:50 2023

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYS"."SYS_IMPORT_TABLE_01" successfully loaded/unloaded
Starting "SYS"."SYS_IMPORT_TABLE_01":  "/******** AS SYSDBA" directory=dir20230110 dumpfile=zkm.dmp logfile=append_test.log cluster=n content=data_only tables=zkm.t1 
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA

 

此时查询对表zkm.t1持有的锁的情况,为排他模式的6号锁:

PS:由于我所在环境就只有我一个人用,因此查出来的会话SID=14就是impdp产生的。后边等待事件信息也能看出。

15:00:40 SYS@test1(24)> select lo.session_id,l.TYPE,lo.LOCKED_MODE,l.REQUEST from v$locked_object lo,v$lock l where lo.object_id in (select object_id from dba_objects where owner='ZKM' and object_name='T1') and lo.session_id=l.sid and l.type='TM';

SESSION_ID TYPE   LOCKED_MODE    REQUEST
---------- ------ ----------- ----------
        14 TM               6          0

Elapsed: 00:00:00.02

 

 

紧接着,在impdp未结束的时候,开启会话sid=489做普通insert操作:

--489
14:59:20 SYS@test1(489)> insert into "ZKM"."T1" select * from "ZKM"."T1";
卡住等待......

 

 

紧接着,在impdp未结束的时候,查询这两个会话的等待事件等信息:
15:01:09 SYS@test1(330)> select sid,event,status,state,blocking_session from v$session where sid in (14,489);

       SID EVENT                               STATUS                   STATE                                                     BLOCKING_SESSION
---------- ----------------------------------- ------------------------ --------------------------------------------------------- ----------------
        14 Datapump dump file I/O              ACTIVE                   WAITED SHORT TIME
       489 enq: TM - contention                ACTIVE                   WAITING                                                                 14

Elapsed: 00:00:00.01

其中,“Datapump dump file I/O”可以确定该会话类型是数据泵产生的会话。

可以看到,sid=489被sid=14阻塞住了。

  使用content=data_only慎重。 另外特别需要注意一点:如果expdp的时候使用data_only,即使impdp不加content=data_only也会是追加模式持有6号锁。                

标签:SYS,impdp,14,DML,content,only,data
From: https://www.cnblogs.com/PiscesCanon/p/17046691.html

相关文章

  • Oracle使用append对表insert会阻塞表的其他会话DML操作
     Oracle使用append对表insert会阻塞其他会话DML操作 快春节了,抽点时间把NNNNNNN久之前的东西整理记录。insert/*+append*/into会对表持有LOCKED_MODE=6的TM锁,导......
  • DML-(Data Manipulation Language)
    DML(DataManipulationLanguage):数据操作语言,用来对数据库中表的数据记录进行增、删、改操作。添加数据(insert)修改数据(update)删除数据(delete)添加数据给指定字段添加......
  • MySQL17 - DML基本语法 - 增删改
    DML基本语法-增删改DATE和DATETIME两个类型的区别DATE是短日期:只包括年-月-日默认格式:%Y-%m-%dDATETIME是长日期:包括年-月-日-时-分-秒默认格式:%Y-......
  • 安卓应用漏洞学习-Content Provider组件的自定义权限
    前期回顾漏洞免费实战部分-安卓应用层getLastPathSegment函数问题漏洞实战部分2-安卓应用ZipEntry对象问题实战漏洞实战部分3-ContentProvider组件的openFile接口问题......
  • js content-type
    letxhr=newXMLHttpRequest()xhr.open('POST','http://xx.aa.cn/home/moban/ssds11')xhr.setRequestHeader('Content-Type','application/json')xhr.send(......
  • day54 - 外键,DML语言
    外键创建表的时候添加外键太多了不想写了注意删除有外键关系的表时,必须要先删除引用别人的表,才能删除被引入的表修改表时添加外键关系 ALTERTABLE`student`......
  • android基础02-广播、持久化、权限、ContentProvider
    广播Android中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会收到自己所关心的广播内容,这些广播可能是来自于系统的,也可能是来自于其他应用程序的。......
  • content
    title:第一篇文章tags:第一篇categories:你好呀这是我的第一篇文章这是二级标题这是正文哈哈哈换了一行这才是真正的换行强调加粗(ctrlb)斜体(ctrli)第一条......
  • file_get_contents重试机制的实现
    最近出现Warning告警file_get_contents(http://a.b.com/xxx/yyy/zzz/?token=da606c144dd9e62e4c3cd701d444638515441538801672658102):failedtoopenstream:Connectio......
  • [WARNING] Resolved [org.springframework.web.HttpMediaTypeNotSupportedException:
    这是json转对象失败的报错 这是web层的代码   这是报错      解决方法: 第一步:请求body选raw,并选择application/json类型   第......