总结:

关于Nologging与append测试的一些总结,通过上面的SQL语句查看可以得出在大量数据插入过程的语句中加入/*+append*/的这个SQL语句产生的REDO日志明显示是会少同时时间节约了很多,当然这样可能会影响备份因此nologging加载数据后要做一个数据库的全备。

insert append并不是在任何时候都可以节省时间的以下是测试的一些总结:

第一种情况:

database为archivelog状态,这种情况下,就算你用insert append也是不一定提高插入效率的。但是如果你将目标表设置为nologging,然后再使用insert append就会很快。

第二种情况:

database为noarchivelog状态,如果在这种情况下直接采用insert方法而不加入append向表中插入数据,占用的redo空间的大小与archivelog状态下占用的大小是相当的,不论表是否为nologging。但是如果采用insert append方法的话,通过redo的占用值大家可以发现,不论表是否为nologging,所占用的redo的大小都是很小的。也就说明:在数据库为noarchivelog的状态下,采用insert append方法,如果表不是nologging,系统也会自动将表转换为nologging(即在执行insert append之前,先执行一个alter table arch1 nologging)。

第三种情况:

如果表上有索引,则append方式批量添加记录,不会减少索引上产生的redo数量,索引上的redo数量可能比表的redo数量还要大。用insert append可以实现直接路径加载速度是快很多,但有一点需要注意: insert append时在表上加”6”类型的锁,会阻塞表上的所有DML语句,因此在有业务运行的情况下要慎重使用。若同时执行多个insert append对同一个表并行加载数据,并不一定会提高速度,因为每一时刻只能有一个进程在加载(排它锁造成)à此观点是在网上查到的对于此疑问对于锁的问题此兄弟可能不是太理解,对于ORACLE数据库来说只要DML特别是insert操作他肯定会将表给锁住而且是独占锁除非进行commit,rollback,及其它的DDL操作来释放否则锁会一直独占导致其它的DML操作无法进行正常的操作,而跟所谓的APPEND无关。

以下是关于表模式(LOGGING/NOLOGGING),插入模式(APPEND/NOAPPEND),数据库运行模式(归档/非归档),REDO日志产生的关系

数据库模式

表模式

插入模式

REDO生成

ARCHIVELOG

LOGGING

APPEND

有REDO

NO APPEND

有REDO

NOLOGGING

APPEND

无REDO

NO APPEND

有REDO

NOARCHIVELOG

LOGGING

APPEND

无REDO

NO APPEND

有REDO

NOLOGGING

APPEND

无REDO

NO APPEND

有REDO

[@more@]

mysql的append用法_insert 中append 用法详解相关推荐

  1. mysql之执行计划——explain中的extra详解

    之前一直对explain中的extra和type两个类型混淆.其实两者完全不同,type列和覆盖索引毫无关系,它只是表示这个查询访问数据的方式,或者说是MySQL查询行的方式. 我们使用一个例子来讲解 ...

  2. mysql视图的更新 条件_mysql中视图更新详解

    视图的可更新性与视图中查询的定义是有关的 一.mysql中那些试图使不可更新的?以下类型的视图是不可更新的 1.包含以下关键字的sql语句:聚合函数(sum.min.max.count).distin ...

  3. mysql日期格式化 yyyymmdd_mysql中格式化日期详解

    1. DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. DATE_FORMAT(date,format) format参数的格式有 %a 缩写星期名 %b 缩写月名 %c 月,数值 ...

  4. python中threading模块_python中threading模块详解

    python中threading模块详解,threading提供了一个比thread模块更高层的API来提供线程的并发性.这些线程并发运行并共享内存. 下面来看threading模块的具体用法: 一. ...

  5. [Python从零到壹] 八.数据库之MySQL和Sqlite基础知识及操作万字详解

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  6. SQL全方位攻略:5. SQL “方言”大比拼:Oracle、MySQL、PostgreSQL限制检索行数语法详解(分页查询)

    系列文章目录 SQL全方位攻略:1.数据库介绍 SQL全方位攻略:2.SQL介绍 SQL全方位攻略:3.SQL标准 SQL全方位攻略:4. 标准SQL和SQL"方言" 文章目录 系 ...

  7. Asp.net中GridView使用详解(引)【转】

    Asp.net中GridView使用详解(引) GridView无代码分页排序 GridView选中,编辑,取消,删除 GridView正反双向排序 GridView和下拉菜单DropDownList ...

  8. js路由在php上面使用,React中路由使用详解

    这次给大家带来React中路由使用详解,React中路由使用的注意事项有哪些,下面就是实战案例,一起来看一下. 路由 通过 URL 映射到对应的功能实现,React 的路由使用要先引入 react-r ...

  9. JavaWeb中filter的详解及应用案例

    JavaWeb中filter的详解及应用案例 转载自:http://www.cnblogs.com/vanl/p/5742501.html 一:Filter介绍 Filter可认为是Servlet的一 ...

  10. java做jsp问题_java/jsp中 中文问题详解

    java/jsp中 中文问题详解 更新时间:2006年10月13日 00:00:00   作者: 预备知识: 1.字节和unicode Java内核是unicode的,就连class文件也是,但是很多 ...

最新文章

  1. 都说百度前端牛,来看看百度前端工程化之H5性能优化
  2. 生态伙伴 | Worktile入驻飞书,助力企业轻松实现敏捷开发与协作
  3. 韩顺平java笔记 第1讲 内容介绍 项目演示 原理剖析
  4. shell 解析 json
  5. Java设计模式(十二):状态设计模式
  6. QUnit源码阅读(2):test基本执行流程
  7. mysql mgr bug_Mysql MGR架构误操作引发的问题处理
  8. css一个盒子里可以装3个图片并排吗_John: CSS浮动与清除浮动属性详解(CSS float clear)...
  9. 【分享创造】react-typewriter-hook: 用react hooks来实现打字机的效果
  10. Quartz.net官方开发指南 第七课 : TriggerListeners和JobListeners
  11. springcloud-知识点总结(三):Hystrix Dashboard turbine Zuul SpringCloud Config
  12. 【填坑】Ubuntu安装vsftpd
  13. linux检查新增文件,linux查看文件内容
  14. Bluecms代码审计
  15. 【Http请求工具类】
  16. Openvswitch手册(4): Mirror
  17. rsi c语言算法,RSI指标的原理计算过程
  18. 用计算机来画出整个方格图,怎么画小学数学中的方格图
  19. element ui 表格全选与否
  20. 刷脸支付开拓创走在时代的前沿

热门文章

  1. 混沌时间序列的 rbf 预测
  2. Logo创作灵魂(下篇)
  3. 使用echarts-gl 绘制3D地球配置详解
  4. 自我管理经典书籍推荐:除了《自我管理必读12篇》,这些书也不容错过
  5. 小卡要民主(卡雷尔机器人)
  6. Technorati 100个最受关注的博客的CMS分布
  7. scripts to compositions to videos
  8. Structure-Revealing联合去噪增强模型论文解读
  9. android系统能内存,安卓手机到底有多能吃RAM内存?
  10. 网站服务器登录很慢,网站打开速度慢如何解决?有何技巧?