inser提高插入的速度的实例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

我们可以使用直接路径的方式插入数据,绕过sga,但是直接路径的方式不会共享数据,也可以将在插入的时候关闭日志,提高插入的速度,但对于数据而言安全性回降低。
以下是实验:

SQL> drop table t purge;


Table dropped.


SQL> create table t as select * from dba_objects where 1=2;

Table created.

----普通插入
SQL> set timing on
SQL> insert into t select * from dba_objects;


86370 rows created.


Elapsed: 00:00:01.52
SQL> rollback;


Rollback complete.

---直接路径插入
Elapsed: 00:00:00.07
SQL> insert /*+append */ into t select * from dba_objects;

86370 rows created.

Elapsed: 00:00:00.39
SQL>
SQL> rollback;

Elapsed: 00:00:00.01

----关闭日志的方式insert数据

SQL> insert /* nologging */ into t select * from dba_objects;

86370 rows created.

Elapsed: 00:00:00.29

Rollback complete.

---直接路径插入+关闭日志的方式
Elapsed: 00:00:00.02
SQL> insert /*+append nologging */ into t select * from dba_objects;

86370 rows created.

Elapsed: 00:00:00.22

关于inser提高插入的速度的实例分析问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。