- 浏览: 265349 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (298)
- 工作感悟 (6)
- java基础 (23)
- 计算机硬件知识 (1)
- 计算机网络知识 (2)
- Struts (3)
- Srping (4)
- hibernate (0)
- ibatis (0)
- webservice (4)
- Thread (22)
- maven (5)
- ubuntu/linux/centos/redhat (46)
- SSO (1)
- ESB (0)
- 工作流 (0)
- oracle (15)
- 云计算 (1)
- hadoop (1)
- nosql (0)
- mysql (3)
- sqlserver (0)
- jquery (0)
- 分布式 (3)
- 集群 (0)
- 设计模式 (2)
- EJB (0)
- map (0)
- cache (5)
- Niginx+varnish+squid+Ats (14)
- Apache (0)
- 工作/职业规划 (0)
- Scala & Groovy (1)
- English (4)
- 数据结构/算法 (6)
- 开发工具 (5)
- 测试 (2)
- Exception (0)
- 定时器 (3)
- j2ee (2)
- 部署 (1)
- Openssl (1)
- 操作系统 (3)
- kvm (13)
- libvirt (5)
- PostgreSql (5)
- 虚拟化 (3)
- 概念理解 (1)
- virt-manager (1)
- RESTful (3)
- 其它 (4)
- ssh2 (14)
- windows (1)
- 房产 (2)
- svn (1)
- 手机 (1)
- ant (1)
- flume (2)
- sqoop (1)
- fastdfs (5)
- log4j (1)
- SPDY (1)
- mongodb (2)
- MQ (2)
- Mina (1)
- dubbo (4)
- PMP (1)
- Webshpere (2)
- jvm (1)
- Btrace (1)
- zookeeper (7)
- UML (1)
- spring cloud (6)
- spring boot (5)
- storm (0)
- 软件管理 (1)
- elasticsearch (1)
- 协议 (2)
- docker (1)
- 性能 (2)
- 安全 (1)
- 代码规范 (1)
- mqtt (1)
- lombok (1)
- 车联网 (1)
- kafka (1)
最新评论
oracle中insert,copy,insert append执行对比
还是由于迁移数据库,测试了insert,copy,insert append的执行速度。
环境:oracle9i向oracle11g迁移,linux系统。
表已建立,只允许插入数据,而不能使用create .. select 或 copy .. create。
1. 建立dblink,供insert,insert append使用。
2. 登录11g数据库。并set timing on
3. 建立视图查看redo size
create redo_size as
select value www.2cto.com
from v$mystat, v$statname
where v$mystat.statistic# = v$statname.statistic#
and v$statname.name = 'redo size';
4. insert into dblink_test_tab select * from tran_rec_03@dblink_test;
insert /*+ APPEND */ into dblink_test_tab select * from tran_rec_03@dblink_test;
copy from ispay/ispay@crmtest insert dblink_test_tab using select * from tran_rec_03;
在执行以上所有语句前与后执行select * from redo_size;
5. 得到的结果如下:
redo_size 用时
insert 177821968 4'25"
insert append 3590412 3'15"
copy 124438620 4'20"
数据量:495665
www.2cto.com
结论:
insert 需要的时间最多,redo量最大。
insert append 需要的时间最短,redo量最小。
copy则不需要dblink。
还是由于迁移数据库,测试了insert,copy,insert append的执行速度。
环境:oracle9i向oracle11g迁移,linux系统。
表已建立,只允许插入数据,而不能使用create .. select 或 copy .. create。
1. 建立dblink,供insert,insert append使用。
2. 登录11g数据库。并set timing on
3. 建立视图查看redo size
create redo_size as
select value www.2cto.com
from v$mystat, v$statname
where v$mystat.statistic# = v$statname.statistic#
and v$statname.name = 'redo size';
4. insert into dblink_test_tab select * from tran_rec_03@dblink_test;
insert /*+ APPEND */ into dblink_test_tab select * from tran_rec_03@dblink_test;
copy from ispay/ispay@crmtest insert dblink_test_tab using select * from tran_rec_03;
在执行以上所有语句前与后执行select * from redo_size;
5. 得到的结果如下:
redo_size 用时
insert 177821968 4'25"
insert append 3590412 3'15"
copy 124438620 4'20"
数据量:495665
www.2cto.com
结论:
insert 需要的时间最多,redo量最大。
insert append 需要的时间最短,redo量最小。
copy则不需要dblink。
发表评论
-
tomcat 数据源集群配置
2016-05-10 20:44 481jdbc:oracle:thin:@(DESCRIPTION= ... -
使用ORACLE自带工具sqlload导入文本文件
2014-07-17 13:36 778Dos 环境下使用SQl*Loader ... -
Oracle append有什么用
2014-07-17 13:27 861/*+append*/ 1. append 属于dire ... -
ORACLE锁机制
2013-08-22 10:11 601数据库是一个多用户使 ... -
Java中JDBC事务和JTA事务区别
2013-08-08 17:15 1375一、事务概述 事务表示 ... -
oracle hints用法大全
2013-07-16 10:52 788在向大家详细介绍Oracle ... -
oracle translate() 详解+实例
2013-07-08 14:58 692一、语法: TRANSLATE(strin ... -
oracle联合查询
2013-05-22 15:15 703等值连接 select * from books,books ... -
oracle锁表问题
2013-05-21 10:38 658oracle锁表问题 查询表 ... -
Oracle的表压缩
2013-04-09 11:09 722Oracle压缩数据的处 ... -
Oracle读写分离架构
2013-04-09 10:30 813读写分离是架构分布式 ... -
ORACLE 各种PARTITION 的分析(原)
2013-04-07 13:34 888总结自ORACLE官方在线帮助文档。 ORACLE 为构建 ... -
ORACLE分区表的使用和管理
2013-04-07 11:13 5871创建和使用分区表 Orac ... -
oracle常用语法和语句收藏
2013-03-22 10:08 7721.case when 示例 select ta ...
相关推荐
Oracle数据库中的Copy命令是SQL*Plus提供的一种便捷的数据复制工具,尤其对于DBA来说,它在处理表间数据复制任务时具有较高的效率。Copy命令允许用户在同一个数据库的不同表之间,甚至不同服务器的数据库之间复制...
Oracle的COPY命令是SQL*Plus工具中用于在数据库之间复制数据的一种高效方法。它通过SQL*Net连接在本地或远程的表之间传输数据,适用于DBA进行数据迁移、备份或同步等任务。以下是对COPY命令的详细说明: 1. **基本...
例如,可以使用`DBMS_LOB.WRITE`在INSERT或UPDATE语句中修改LOB值,或者使用`DBMS_LOB.APPEND`在已有的LOB后面添加新内容。 学习`DBMS_LOB`包的过程中,了解其每个过程和函数的参数含义、使用场景和返回值非常重要...
copy from username/password@oraclename append table_name1 using select * from table_name2; ``` 2. **常规插入方式** - 直接使用`INSERT INTO...SELECT FROM`语句将数据从一个表插入到另一个表。 - 为了...
在Oracle PL/SQL中,SQL*PLUS是一个非常重要的工具,它提供了一系列命令用于执行SQL和PL/SQL脚本,如: - `@`:运行存储在文件中的SQL或PL/SQL脚本。 - `#del`:删除当前行。 - `$describe`:显示表或视图的列信息。...
10. **批量拷贝与常规插入**:Oracle提供的COPY命令和常规的INSERT INTO...SELECT语句是批量数据迁移的常见方式,通过设置ARRAYSIZE和COPYCOMMIT,可以控制批量处理的大小,提高效率。 11. **CTAS(CREATE TABLE AS...
本文主要分享了在非生产环境中快速、大批量插入数据的一些经验技巧,这些技巧主要适用于Oracle数据库系统。 首先,基础的`INSERT INTO ... SELECT FROM`语句是最常见的数据迁移方式。例如: ```sql INSERT INTO tab...
ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup ...
- `INSERT`:插入新行到表中。 - `SELECT`:从表中检索数据。 - `LOCK`:锁定表。 - `UPDATE`:更新表中的数据。 - `CREATE`:创建新的数据库对象。 - `NOAUDIT`:取消审计。 - `VALIDATE`:验证对象。 - `...
2. **UPDATE**:更新已存在的LOB字段,可以使用DBMS_LOB的APPEND、TRIM、COPY等函数来修改数据。 3. **SELECT**:通过SELECT语句读取LOB数据,可以使用DBMS_LOB.GETLENGTH函数获取长度,DBMS_LOB.SUBSTR函数截取部分...
- **SQL命令关键字**:在Oracle中,有17个关键字被用于作为SQL语句的开头,包括: - `ALTER`: 修改数据库对象。 - `DROP`: 删除数据库对象。 - `REVOKE`: 撤销权限。 - `AUDIT`: 记录特定操作。 - `GRANT`: ...
- `INSERT`:用于向表中添加新行。 - `SELECT`:用于检索数据。 - `COMMENT`:用于向数据库对象添加注释。 - `LOCK`:用于锁定数据库对象。 - `UPDATE`:用于更新表中的现有行。 - `CREATE`:用于创建新的...
16. **APPEND**: 将数据添加到现有的数据文件中,通常在进行大数据量的插入操作时使用。 17. **ASCII**: 返回字符的ASCII码值,用于字符编码的转换。 18. **ASIN**: 数学函数,计算反正弦值。 19. **ATAN**: 数学...
数据拷贝命令`COPY`能够高效地在不同数据库之间迁移数据,特别适用于处理LONG类型数据列,且提供了APPEND、CREATE、INSERT和REPLACE等多种操作选项。 2. **SQL*Plus Worksheet**:这是SQL*Plus的一个全屏幕开发环境...
第一部分 Oracle SQL*PLUS基础 23 第一章 Oracle数据库基础 23 §1.1 理解关系数据库系统(RDBMS) 23 §1.1.1 关系模型 23 §1.1.2 Codd十二法则 24 §1.2 关系数据库系统(RDBMS)的组成 24 §1.2.1 RDBMS 内核 24...
2. 数据操纵语言(DML):DML允许用户对数据库中的数据进行修改,包括插入(INSERT)、更新(UPDATE)和删除(DELETE)操作。 3. 数据定义语言(DDL):DDL用于创建和管理数据库对象,如表、视图、索引等。 4. 数据...
- **文件操作**: `APPEND`, `BREAK`, `COPY`, `EDIT`, `GET`, `SAVE`, `START`, `SPPOOL` - **环境设置**: `ACCEPT`, `CLEAR`, `DEFINE`, `DISCONNECT`, `EXIT`, `HOST`, `INPUT`, `PAUSE`, `QUIT`, `SET`, `TIMING`...
在 Oracle 数据库管理中,SQL*Plus 是一个非常重要的工具,它可以帮助用户执行 SQL 语句并查看结果。以下是一些常用的基础命令: 1. **数据定义语言(Data Definition Language, DDL)**: - `ALTER`:修改数据库...