楼主: jlandzpa

[精华] 请大家探讨一个数据传送的方案(置顶几天)

[复制链接]
论坛徽章:
0
71#
发表于 2002-8-27 10:40 | 只看该作者

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

    一、建新表的方式
   
    create table target_tablename tablespace target_tablespace_name nologging
            pctfree 10 pctused 60
            storage(initial 4M next 4M minextents 1 maxextents unlimited pctincrease 0)
            as select * from username.source_tablename where 条件;

    注意事项:新建的表没有原来表的索引和约束条件, 如果需要可以新建索引和约束条件.
   
    二、直接插入的方法
   
    INSERT /*+ APPEND */ INTO target_tablename
           SELECT * FROM username.source_tablename where 条件;
    COMMIT;                                    

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

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
72#
发表于 2002-8-27 11:26 | 只看该作者

FTP的可行之处

我认为FTP可行
主要是本人目前也从事相似的工作
考虑的主要因素也是一个安全,有效性,兼顾维护简便,故障点定位准确,和能够多次失败的情况下仍然不断侦听并在合适状况下继续传输。
我的构想是将A的数据导出后,存成文件格式,然后在加密,加校验码后传输,B地校验,解密,用LOADER导入。
这样传输失败概率较小,即使失败也能够再次传输,而且比较容易作到无人职守的情况。

使用道具 举报

回复
论坛徽章:
4
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:342012新春纪念徽章
日期:2012-01-04 11:49:54
73#
发表于 2002-8-28 16:00 | 只看该作者
我觉得如果用消息中间件的话,oracle自己就有AQ就可以实现这个功能了.

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
74#
发表于 2002-8-28 16:00 | 只看该作者
ftp 简单易行,保证速度,安全性?
db_link oracle自身特性,安全性没问题,速度?
中间件 开发费用,成本问题?
各有所缺,建议根据不同的情况选择不同的方式处理

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
75#
发表于 2002-8-29 16:08 | 只看该作者
我现在和你的遭遇一样,我的状况是十多个office的数据全部集在TYO SERVER,每天要把各办的数据传回各办,而且传送频率比较高,另外各点网络状况又不是很好,才32K。本来以为做个简单的SNAPSHOT就来完成,但考虑到网络流量,现在还在想别的办法,不过你说的那种方法,我们已经实现,不过没有用FTP。还是用的DB——LINK。所以对你可能没什么用。希望可以和你共同解决这个问题。

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
76#
发表于 2002-9-1 21:13 | 只看该作者
我也倾向于用ftp

使用道具 举报

回复
论坛徽章:
0
77#
发表于 2002-9-2 17:29 | 只看该作者

可否让系统自动创建表?

Dear Buddy
     请教一个问题,我有一数据库,资料量很大,每月做查询很费时间,我可否让系统自动创建表,把资料按月份、季度、年份进行转移?这样我查询,不必从主表中操作,可从新建表中进行查询,提高响应速度,SQL语句该怎么写?请帮我!TKS!
最初由 whon501 发布
[B]
如果你要把ORACLE里的大量数据(80M以上)转移到另外的用户,另外的表空间里。可以用下面介绍的快速转移
数据的方法。

    一、建新表的方式
   
    create table target_tablename tablespace target_tablespace_name nologging
            pctfree 10 pctused 60
            storage(initial 4M next 4M minextents 1 maxextents unlimited pctincrease 0)
            as select * from username.source_tablename where 条件;

    注意事项:新建的表没有原来表的索引和约束条件, 如果需要可以新建索引和约束条件.
   
    二、直接插入的方法
   
    INSERT /*+ APPEND */ INTO target_tablename
           SELECT * FROM username.source_tablename where 条件;
    COMMIT;                                    

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

使用道具 举报

回复
论坛徽章:
0
78#
发表于 2002-9-8 07:48 | 只看该作者
不知道我的办法行么?
HTTPS(要求128位的SSL)+XML/EDI!

使用道具 举报

回复
论坛徽章:
0
79#
发表于 2002-9-9 08:19 | 只看该作者

能否具体点?

楼下的兄弟,你的方案能否具体点?非常感谢!

使用道具 举报

回复
论坛徽章:
0
80#
发表于 2002-9-9 12:44 | 只看该作者

Re: 可否让系统自动创建表?

最初由 david_well 发布
[B]Dear Buddy
     请教一个问题,我有一数据库,资料量很大,每月做查询很费时间,我可否让系统自动创建表,把资料按月份、季度、年份进行转移?这样我查询,不必从主表中操作,可从新建表中进行查询,提高响应速度,SQL语句该怎么写?请帮我!TKS!
[/B]


用分区表,不过ORACLE有限制!
PERSONAL ORACLE 和 ENTERPRISE ORACLE有分区表的功能!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表