赛迪网 > IT技术 数据库 > 精彩更新
  IT资讯搜索
 
IT产品搜索

怎样将Oracle中大量数据快速转移数据

发布时间:2007.03.02 04:39     来源:赛迪网技术社区    作者:woole











如果你要把Oracle里的大量数据(80M以上)转移到另外的用户,另外的表空间里。可以用下面介绍的快速转移数据的方法。

一、建新表的方式

    
         create table target_tablename tablespace 
         target_tablespace_name nologging 
     pctfree 10 pctused 60 
     storage(initial 5M next 5M minextents 1 
         maxextents unlimited pctincrease 0)
     as select * from username.source_tablename where 条件;
  

注意事项: 新建的表没有原来表的索引和默认值, 只有非空(not null)的约束素条件可以继承过来,其它的约束条件或索引需要重新建立.

二、直接插入的方法

    INSERT /*+ APPEND */ INTO target_tablename 
    SELECT * FROM username.source_tablename where 条件; 
    COMMIT;   
  

注意事项:

用INSERT /*+ APPEND */ 的方法会对target_tablename产生级别为6的独占锁,如果运行此命令时还有对target_tablename的DML操作会排队在它后面,对OLTP系统在用的表操作是不合适的。

说明:这两种方法转移数据时没有用SGA里数据缓冲区和事物处理的回滚段, 也不写联机事物日志,就象数据库装载工具Solload一样直接把数据写到物理文件,速度是很快的。在Oracle8i以后的版本都可以使用。(T004)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 教你用Oracle解析函数快速检查序列间隙 (03-01) · 关于Oracle数据库中密码安全管理总结 (02-28)
· Oracle中通过触发器来追踪用户的活动 (02-28) · 针对Oracle远程复制和容灾的解决方案 (02-28)
· Oracle中共享连接和专用连接对比分析 (02-27) · 自动完成Oracle客户端的安装及其配置 (02-27)
· Oracle 9i并行处理的体系结构及其优点 (02-27) · 用Oracle分层管理器实现有效存储数据 (02-27)
· 针对Oracle 10g中虚拟专用数据库详解 (02-27) · 推荐:Oracle数据库中分页查询介绍 (02-27)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管