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

东阳建设局网站惠州水口网站建设

东阳建设局网站,惠州水口网站建设,长春网站制作方案定制,失信被执行人名单查询系统文章目录 前言一、大表数据附#xff1a;查询大表 二、解题思路1.导出排除大表的数据2.rowid切片导出大表数据Linux代码如下#xff08;示例#xff09;#xff1a;Windows代码如下#xff08;示例#xff09;#xff1a;手工执行代码如下#xff08;示例#xff09;查询大表 二、解题思路1.导出排除大表的数据2.rowid切片导出大表数据Linux代码如下示例Windows代码如下示例手工执行代码如下示例 3.rowid切片导入大表数据导入前准备linux代码如下示例windows代码如下示例 三、导出时业务卡顿如何停止 前言 Oracle在做数据迁移、还原测试库以及其他需要导出、导入数据的需求下我们常用到数据泵来进行数据的转移操作但往往很多事后我们要操作的库数据量都非常大且数据库中clob字段非常多就给我们导出带来了一些问题导出慢或者卡在那里很久不动等问题 有小伙伴可能会说你开并行不就行了吗事实上当你数据库中大对象数据量占用较大时候你会发现开并行没有任何用那么怎么解决这个问题呢那么思路是先排除大对象的表然后大表再通过rowid切片多个进程导出导入。 提示以下是本篇文章正文内容下面案例可供参考 一、大表数据 截图中可以看到此表占用446G数据量压缩完后大小为51G开了2个进程并行但没有效果最终执行了10小时时间是非常久的。 附查询大表 --查看大对象先排除导出然后再单独导出 SELECT owner,tablespace_name,case SEGMENT_typewhen LOBSEGMENT then(select table_name || . || column_namefrom dba_lobs twhere t.segment_name s.segment_name)elseSEGMENT_NAMEend as SEGMENT_NAME,BYTES / 1024 / 1024 MB,BYTES / 1024 / 1024 / 1024 GBFROM DBA_SEGMENTS sOrder By 4 Desc,3 asc;二、解题思路 1.导出排除大表的数据 命令参考: expdp system/oracleip:1521/sidname directorydatapump_dir parallel8 clusterN dumpfileexp_full0824_%U.dmp logfileexp_full_20230824.log schemasusrname COMPRESSIONALL excludestatistics excludeTABLE:\in\(\table_name\\)\这里可以看到排除大表后整体导出时间下降到了17分钟 2.rowid切片导出大表数据 rowid切片导出数据是从0开始我们需要知道rowid的分配来控制最终想执行的并行数。 Linux代码如下示例 #!/bin/bash chunk9 for ((i0;i8;i)); do expdp system/oracle TABLEStablename QUERYtablename:\where mod\(dbms_rowid.rowid_block_number\(rowid\)\, ${chunk}\) ${i}\ directoryDMP dumpfileTX_${i}.DMP logfileTX_${i}.log echo $i sleep 10 done Windows代码如下示例 echo off #这里可以带上IP地址、端口、sid set connStrsystem/oracleip:1521/sid_name #这里指的并行数 set chunk10 #sid_name set oracle_sidorcl #oracle_home路径注意bin后边的‘\’ set oracle_home_pathd:\oracle\product\10.2.0\db_1\bin\rem 格式FOR /L %variable IN (start,step,end) DO command [command-parameters] #10个并行0~9(开始标号、每次增加量、结束标号) for /l %%a in (0,1,9) do ( start /b %oracle_home_path%expdp %connStr% TABLEStable_name QUERYtable_name:\where mod\(dbms_rowid.rowid_block_number\(rowid\)\,%chunk%\) %%a\ directoryexpdpdump dumpfileTX_%%a.DMP logfileTX_%%a.log timeout 10 nul 2nul )手工执行代码如下示例 #如下打开三个窗口分别粘贴执行如果要开更多的进程需要更改3后后面的0~2 SQL create or replace directory dmp as D:\dump\; SQL grant read,write on directory dmp to public;expdp system/oracle tablestable_name QUERYtable_name:\where mod\(dbms_rowid.rowid_block_number\(rowid\)\,3\) 0\ directoryDMP dumpfilexxxx_0.dmp logfilexxxx_0.log expdp system/oracle tablestable_name QUERYtable_name:\where mod\(dbms_rowid.rowid_block_number\(rowid\)\,3\) 1\ directoryDMP dumpfilexxxx_1.dmp logfilexxxx_1.log expdp system/oracle tablestable_name QUERYtable_name:\where mod\(dbms_rowid.rowid_block_number\(rowid\)\,3\) 2\ directoryDMP dumpfilexxxx_2.dmp logfilexxxx_2.log )以上我拿一张14G数据表进行测试3个并行度执行实际4分半实际测试中切片导出数据也可以加压缩参数。 对比此张图可以看到我的切片测试已将导出实际提升了2倍左右如果并行度更高的话那么我们的整体时间会成倍降低。 3.rowid切片导入大表数据 导入前准备 在导入大表数据之前需要做的是 #确保大表所在的表空间存在 select table_name,tablespace from user_tables where table_nameTABLE_NAME;#创建用户以及表结构建议使用plsql查询 SELECT DBMS_METADATA.GET_DDL(TABLE,TABLE_NAME) from DUAL;linux代码如下示例 #!/bin/bash for ((i0;i8;i)); do #echo dumpfileTX_${i}.DMP impdp \/ as sysdba\ directoryimpdpdump dumpfileTX_${i}.DMP logfileimpdp_TX_${i}.log DATA_OPTIONSDISABLE_APPEND_HINT TRANSFORMDISABLE_ARCHIVE_LOGGING:Y CONTENTDATA_ONLY sleep 10 donewindows代码如下示例 echo offset connStrsystem/oracle set oracle_sidorcl set oracle_home_pathd:\oracle\product\10.2.0\db_1\bin\rem 格式FOR /L %variable IN (start,step,end) DO command [command-parameters]for /l %%a in (0,1,9) do ( rem 11g upper start /b %oracle_home_path%impdp %connStr% directoryimpdpdump dumpfileTX_%%a.DMP logfileimp_TX_%%a.log DATA_OPTIONSDISABLE_APPEND_HINT TRANSFORMDISABLE_ARCHIVE_LOGGING:Y CONTENTDATA_ONLYstart /b %oracle_home_path%impdp %connStr% directoryimpdpdump dumpfileTX_%%a.DMP logfileimp_TX_%%a.log CONTENTDATA_ONLY timeout 10 nul 2nul )测试表导入成功和切片导出的时间基本相同。 三、导出时业务卡顿如何停止 select s.inst_id,to_char(sysdate,YYYY-MM-DD HH24:MI:SS) DATE, s.program, s.sid, orakill orcl2 ||spid,kill -9 ||spid, s.status, s.username, d.job_name, p.spid, s.serial#, p.pid ,ALTER SYSTEM KILL SESSION ||||s.SID||,||s.SERIAL#||,||s.inst_id|||| IMMEDIATE; killsefrom gv$session s, gv$process p, dba_datapump_sessions d where p.addrs.paddr and s.saddrd.saddr and s.inst_idp.inst_id and s.inst_idd.inst_id; select orakill orcl ||spid ,ALTER SYSTEM KILL SESSION ||||t1.SID||,||t1.SERIAL#|||| IMMEDIATE; killse --,kill -9 ||spidfrom sys.gV_$PROCESS t,gv$session t1,dba_datapump_sessions d where t.addrt1.paddr and t1.saddrd.saddrand t1.TypeUSER and t1.username is not null;select drop table || owner_name || . || job_name || purge; from dba_datapump_jobs where state NOT RUNNING ;参考文献https://mp.weixin.qq.com/s/pKNe2EzpB_PM0itpa4jrdA
http://www.huolong8.cn/news/300632/

相关文章:

  • 网站开发程序制作域名备案组建 网站开发团队
  • 本地怎么做网站服务器吗网站开发框架 Wordpress
  • 全心代发17做网站购物网站最重要的功能
  • 校园网站建设招标公告旅游网站制作分析
  • seo优化外包苏州网站快速排名优化
  • 手机网站制作软件找人做网站如何担保
  • 大连建设监察执法网站网站开发实践实验报告
  • 想把公司的外部网站替换网站制作教程ppt
  • 东莞网站建设运营方案甘特图模板关于网站建设
  • 响应式网站pad尺寸网站升级通知
  • html5线上运营网站pc端和移动端的网站区别是什么意思
  • 淘宝网店运营seo代码优化
  • 2018爱情动做网站哪个网站做外贸生意
  • 邹城市建设银行网站做网站服装app
  • 手机优化网站建设想找个专业做网站公司
  • 个人性质网站郑州中心站
  • 医院网站建设方案大全长春建设集团网站
  • 自己怎样建网站做微商大数据培训哪家好
  • 网站运营策略贵州省建设执业资格教育促进会网站
  • 山西大同企业做网站翻硬币网站怎么做
  • 电子商务行业网站网站开发即时聊天源码
  • 茂名住房和城乡建设局网站wordpress视频悬停
  • 网站广告调词软件网站建设 维护
  • 网站收录情况网易游戏财报
  • 高大上企业网站哪里有做杂志的免费模板下载网站
  • 胶州做网站公司计算机网站开发的目的
  • 网站与服务器的关系安徽省两学一做网站
  • 个人网页模板关于爱国站长工具seo综合查询论坛
  • 建建设网站公司网站推广的目标是什么
  • 什么网站做视频做网站怎么开发程序