oracle 11g SKIP_UNUSABLE_INDEXES参数
SKIP_UNUSABLE_INDEXES的作用是在DML期间跳过对索引的维护,这样可以提交DML的效率,可以事后一次性重建,但是SKIP_UNUSABLE_INDEXES=y对unique index不起作用,因为此时的unique index扮演者constraint的作用所以在insert数据时index必须被更新。我们最近遇到个场景比较麻烦,使用sql load direct加载的数据,有一个id字段因为并行加载无法通过sequence生成唯一值,需要在加载完成后使用update set = seq.nextval生成序列号,但是update无法跳过唯一索引,也就是上面提到的。但是靠业务代码中drop/create index每个表硬编码太不现实、维护性也差,因为我们有数百处这样的逻辑,于是研究出了一个变通的方法,写个存储过程,首先查询某个表的所有唯一索引定义,将其删除,然后重建为非唯一索引并标记为unusable,这样索引定义在但是不维护,这么做的优点是索引定义保持了又不耗费时间,如下:
select count(1) from ta_textparameter
drop index idx_xx; --2500w记录
create index idx_xx on ta_textparameter(l_rowid,c_tenantid,c_paramlevel,c_paramclass,c_paramitem,c_tacode,c_managercode,c_fundcode,c_agencyno) nologging;
--166秒
drop index idx_xx; --2500w记录
create index idx_xx on ta_textparameter(l_rowid,c_tenantid,c_paramlevel,c_paramclass,c_paramitem,c_tacode,c_managercode,c_fundcode,c_agencyno) unusable nologging;
--0.01秒
oracle 11g SKIP_UNUSABLE_INDEXES参数的更多相关文章
- Oracle 11g Dataguard参数详解
https://www.jb51.net/article/52269.htm注:本文译自<Oracle Data Guard 11g Handbook> Page 78 – Page 88 ...
- Oracle 11g新参数USE_LARGE_PAGES与AMM使用 (转载)
在之前的文章(http://space.itpub.net/17203031/viewspace-774843)中,笔者介绍了如何在Linux 2.6内核中配置HugePage以及AMM与其的不兼容性 ...
- Oracle 11G 隐含参数“_controlfile_autobackup_delay”
RMAN设置控制文件自动备份,当发生数据库备份时,或建表空间,删除log文件等物理结构发生改变时,oracle会自动备份控制文件. Oracle 10g会立刻备份,Oracle 11g会有几分钟的延迟 ...
- 静默安装oracle 11g及参数配置优化详解
一.安装前准备工作1.修改主机名#vi /etc/hosts //并添加内网IP地址对应的hostname,如下127.0.0.1 localhost::1 ...
- Linux平台oracle 11g单实例 安装部署配置 快速参考
1.重建主机的Oracle用户 组 统一规范 uid gid 以保证共享存储挂接或其他需求的权限规范 userdel -r oracle groupadd -g 7 oinstall groupadd ...
- Oracle 11g静默安装软件+手工创建数据库
由于是二次跳转+远程操作,无法使用图形界面,不能直接图形界面安装.采用静默安装软件+手工创建数据库的方式完成需求. 静默模式安装Oracle软件,配置监听程序 手工建库 检查各组件是否符合要求 1. ...
- Oracle 11g静默安装简明版
环境:RHEL 6.5 + Oracle 11.2.0.4 1. 初步处理应答文件 2. 静默安装软件 3. 静默安装监听 4. 静默dbca建库 说明: 本文默认安装软件前的步骤已经设置完毕 如果没 ...
- RHEL6.4 + Oracle 11g DG测试环境快速搭建参考
环境现状: 两台虚拟主机A和B: 1. A机器已安装ASM存储的Oracle 11g 实例 参考:http://www.cnblogs.com/jyzhao/p/4332410.html 2 ...
- Oracle 11g DG配置简明版
环境: 主库A机:在线生产环境,RHEL 6.4 + Oracle 11.2.0.3 备库B机:新增备机,RHEL 6.4 需求: 对生产环境最小影响前提下配置DG备库. 目录: 一.B机安装相同版本 ...
随机推荐
- vue弹窗组件
文件结构 component.vue <template> <div class="_vuedals" v-show="show"> & ...
- Dotfuscator 使用图解教程
Dotfuscator:是.NET混淆器和压缩器,它可以帮助您防止您的应用程序被反编译.同时,它还可以使得您的应用程序更加小巧以及高效.我用的是4.9版本的Dotfuscator,Dotfuscato ...
- 命令行方式调用winrar对文件夹进行zip压缩示例代码
调用winRAR进行压缩 using System; using System.Collections.Generic; using System.Linq; using System.Text; u ...
- Java编写email实现内容换行
用java编写的发送邮件要使用<br>来实现换行,而不能使用\n,或者\r\n // 5. Content: 邮件正文(可以使用html标签)(内容有广告嫌疑,避免被邮件服务器误认为是滥发 ...
- 前端c标签foreach传值给后台
前端c标签foreach传值给后台 <div style="margin-bottom: 10px"> <c:forEach items="${good ...
- QT 添加 lib库
扒自网友文章: 一.添加第三方的头文件 首先,添加头文件 #include "ControlCAN.h" 然后,再将这个头文件放到工程的目录下 二.添加.lib文件 首先,将.l ...
- oracle 修改表结构,增加列,删除列等
增加一列:ALTER TABLE yourTabbleName ADD columnName dataType; 增加多列:ALTER TABLE yourTabbleName ADD (column ...
- QString和char*互转
1. QString转为char * // QString转QByteArray QByteArray sr = strQ.toLocal8Bit(); int len = sr.length(); ...
- <6>Cocos Creator调试
高手在于调试,下面来谈Cocos Creator调试! 1. 网页平台调试 调试常见的三种形式为调试打印.运行时报错与断点调试,这里主要利用编辑器"VS Code"与"C ...
- MOG插件(葡萄牙语,略作翻译)
这次记录下MOG大神的插件,自从我发现了这个插件,似乎开启了一个新世界诶~~~ 网址 https://atelierrgss.wordpress.com 1. MOG_YuruYuri.js CARA ...