- 浏览: 302870 次
- 性别:
- 来自: 西安
文章分类
- 全部博客 (137)
- Ubuntu10.04 (16)
- 机器学习 (4)
- oracle (27)
- Moodle (1)
- JavaWeb (7)
- Mysql (3)
- IT生活 (8)
- VNC (1)
- FCKeditor (1)
- 分布式计算 (1)
- Matlab (2)
- Lisp (0)
- window server2003 (1)
- 电脑常见问题总结 (11)
- postscript (1)
- Speculative Threeading (4)
- 科研经验 (5)
- 统计学基础概念 (1)
- svn (1)
- c++ (6)
- 精神读物 (2)
- C 程序设计基础现代方法 (3)
- Spark (15)
- openmp (1)
- centos 6.x (2)
- CUDA (1)
最新评论
-
黎明之星:
今天我也遇到了这个问题,你的链接已经找不到了;楼主可以发我一个 ...
用dtree构建动态树,并用右键实现添加、修改、删除 -
小侯爷晨曦:
楼主给的地址找不着,能把代码发给我吗?谢谢,邮箱:821925 ...
用dtree构建动态树,并用右键实现添加、修改、删除 -
sinoyang:
代码发给我谢谢,邮箱:345306321@qq.com 谢谢。 ...
用dtree构建动态树,并用右键实现添加、修改、删除 -
hpuyancy:
请问,matlab 在web下进行调用,如果用户量大,计算任务 ...
Java应用程序和java Web调用Matlab配置实例 -
dayu03:
发份源码给我好吗,qq:865607639
用dtree构建动态树,并用右键实现添加、修改、删除
以下的文章主要讲述的是Oracle高级复制的同步复制,如果你需要在全国的几个相关地方来架设相关服务器(Oracle),其要求是各个相关的DB数据的一致,以下就是具体方案的描述,希望在你今后的学习中会有所帮助。
以下是测试方案中的一种:同步复制
Oracle 高级复制同步复制配置步骤详细说明
[Oracle] Oracle高级复制同步复制配置步骤
首先,数据库要具备Oracle高级复制功能(用system身份登录数据库,查看v$option视图,如果其中Advanced replication为TRUE,则支持高级复制功能;否则不支持)
一.数据库基本情况
数据库A 版本Oracle 10.2.0.1 数据库名sid:eread
数据库B 版本Oracle 10.1.0.3 数据库名sid:test
主体定义站点:A eread
主体站点:B test
注:主体定义站点指配置复制工作的站点
本例涉及的用户.
复制管理员:repadmin
应用用户:cqm
本例Oracle高级复制的对象:reptest 数据表
本例的先决条件:你需要设置好相应的参数,job_queue_processes需要大于0,global_name=true,并且建立相应的db link.
alter system set global_names=true scope=both;
二.在两个数据库上分别创建应用用户CQM
CREATE USER CQM IDENTIFIED BY CQM DEFAULT TABLESPACE CQM TEMPORARY TABLESPACE TEMP;
GRANT DBA TO CQM;
三.在两个数据库上分别创建复制管事员用户REPADMIN
创建repadmin用户管理复制环境
CREATE USER REPADMIN IDENTIFIED BY REPADMIN;
ALTER USER REPADMIN DEFAULT TABLESPACE USERS;
ALTER USER REPADMIN TEMPORARY TABLESPACE TEMP;
GRANT connect, resource TO REPADMIN;
授予repadmin用户权限可以管理当前站点中任何主体组
EXECUTE dbms_repcat_admin.grant_admin_any_schema('REPADMIN');
授予repadmin用户权限可以为任何表创建snapshot logs
GRANT comment any table TO REPADMIN;
GRANT lock any table TO REPADMIN;
指定repadmin用户为propagator,并授予执行任何procedure的权限
EXECUTE dbms_defer_sys.register_propagator('REPADMIN');
GRANT execute any procedure TO REPADMIN;
四.更改两个数据库的全局名称
alter database rename global_name to A.TEST.COM.CN;
alter database rename global_name to B.TEST.COM.CN;
A:eread.im.com.cn
B:test.im.com.cn
五.在两个数据库上建立数据库链接
create public database link test.im.com.cn connect to REPADMIN identified by REPADMIN using 'test';
create public database link eread.im.com.cn connect to REPADMIN identified by REPADMIN using 'eread';
六.在两个数据库的应用用户CQM下创建表
在数据库EREAD上用户CQM下:注意,要进行Oracle高级复制的表必须有主键
CREATE TABLE TEST(ID NUMBER(10),TIMESTAMP DATE DEFAULT sysdate);
ALTER TABLE TEST ADD(CONSTRAINT TEST_PK PRIMARY KEY(ID));
在数据库EREAD上用户CQM下:
CREATE TABLE TEST(ID NUMBER(10),TIMESTAMP DATE DEFAULT sysdate);
ALTER TABLE TEST ADD(CONSTRAINT TEST_PK PRIMARY KEY(ID));
七.在主体定义站点开始操作(数据库A:eread)
以REPADMIN登录数据库eread
创建复制组:
execute dbms_repcat.create_master_repgroup('rep_hh');
execute dbms_repcat.create_master_repgroup('repg');
在复制组里加入复制对象:
execute dbms_repcat.create_master_repobject
(sname=>'cqm',oname=>'test',type=>'table',
use_existing_object=>true,gname=>'repg');,copy_rows=>false);
对复制对象产生复制支持:
execute dbms_repcat.generate_replication_support('cqm','test','table');
添加主体复制节点:
execute dbms_repcat.add_master_database(gname=>'repg',master=>'
test.im.com.cn',use_existing_objects=>true,
copy_rows=>false, propagation_mode => 'synchronous');
在主体定义站点启动Oracle高级复制:
execute dbms_repcat.resume_master_activity('repg',true);
八.至此配置完成
测试:
1)模拟小数据量测试:OK
2)模拟大数据量测试:
CREATE OR REPLACE procedure insert_into_test
as
i number;
m NUMBER;
n NUMBER;
BEGIN
n:=0;
FOR i IN 1..10000 LOOP
m:=i;
INSERT INTO test(id)VALUES (m);
nn:=n+1;
IF n=1000 THEN
COMMIT;
n:=0;
END IF;
END LOOP;
COMMIT;
END;
/
以上的相关内容就是对Oracle高级复制之同步复制的介绍,望你能有所收获。
以下是测试方案中的一种:同步复制
Oracle 高级复制同步复制配置步骤详细说明
[Oracle] Oracle高级复制同步复制配置步骤
首先,数据库要具备Oracle高级复制功能(用system身份登录数据库,查看v$option视图,如果其中Advanced replication为TRUE,则支持高级复制功能;否则不支持)
一.数据库基本情况
数据库A 版本Oracle 10.2.0.1 数据库名sid:eread
数据库B 版本Oracle 10.1.0.3 数据库名sid:test
主体定义站点:A eread
主体站点:B test
注:主体定义站点指配置复制工作的站点
本例涉及的用户.
复制管理员:repadmin
应用用户:cqm
本例Oracle高级复制的对象:reptest 数据表
本例的先决条件:你需要设置好相应的参数,job_queue_processes需要大于0,global_name=true,并且建立相应的db link.
alter system set global_names=true scope=both;
二.在两个数据库上分别创建应用用户CQM
CREATE USER CQM IDENTIFIED BY CQM DEFAULT TABLESPACE CQM TEMPORARY TABLESPACE TEMP;
GRANT DBA TO CQM;
三.在两个数据库上分别创建复制管事员用户REPADMIN
创建repadmin用户管理复制环境
CREATE USER REPADMIN IDENTIFIED BY REPADMIN;
ALTER USER REPADMIN DEFAULT TABLESPACE USERS;
ALTER USER REPADMIN TEMPORARY TABLESPACE TEMP;
GRANT connect, resource TO REPADMIN;
授予repadmin用户权限可以管理当前站点中任何主体组
EXECUTE dbms_repcat_admin.grant_admin_any_schema('REPADMIN');
授予repadmin用户权限可以为任何表创建snapshot logs
GRANT comment any table TO REPADMIN;
GRANT lock any table TO REPADMIN;
指定repadmin用户为propagator,并授予执行任何procedure的权限
EXECUTE dbms_defer_sys.register_propagator('REPADMIN');
GRANT execute any procedure TO REPADMIN;
四.更改两个数据库的全局名称
alter database rename global_name to A.TEST.COM.CN;
alter database rename global_name to B.TEST.COM.CN;
A:eread.im.com.cn
B:test.im.com.cn
五.在两个数据库上建立数据库链接
create public database link test.im.com.cn connect to REPADMIN identified by REPADMIN using 'test';
create public database link eread.im.com.cn connect to REPADMIN identified by REPADMIN using 'eread';
六.在两个数据库的应用用户CQM下创建表
在数据库EREAD上用户CQM下:注意,要进行Oracle高级复制的表必须有主键
CREATE TABLE TEST(ID NUMBER(10),TIMESTAMP DATE DEFAULT sysdate);
ALTER TABLE TEST ADD(CONSTRAINT TEST_PK PRIMARY KEY(ID));
在数据库EREAD上用户CQM下:
CREATE TABLE TEST(ID NUMBER(10),TIMESTAMP DATE DEFAULT sysdate);
ALTER TABLE TEST ADD(CONSTRAINT TEST_PK PRIMARY KEY(ID));
七.在主体定义站点开始操作(数据库A:eread)
以REPADMIN登录数据库eread
创建复制组:
execute dbms_repcat.create_master_repgroup('rep_hh');
execute dbms_repcat.create_master_repgroup('repg');
在复制组里加入复制对象:
execute dbms_repcat.create_master_repobject
(sname=>'cqm',oname=>'test',type=>'table',
use_existing_object=>true,gname=>'repg');,copy_rows=>false);
对复制对象产生复制支持:
execute dbms_repcat.generate_replication_support('cqm','test','table');
添加主体复制节点:
execute dbms_repcat.add_master_database(gname=>'repg',master=>'
test.im.com.cn',use_existing_objects=>true,
copy_rows=>false, propagation_mode => 'synchronous');
在主体定义站点启动Oracle高级复制:
execute dbms_repcat.resume_master_activity('repg',true);
八.至此配置完成
测试:
1)模拟小数据量测试:OK
2)模拟大数据量测试:
CREATE OR REPLACE procedure insert_into_test
as
i number;
m NUMBER;
n NUMBER;
BEGIN
n:=0;
FOR i IN 1..10000 LOOP
m:=i;
INSERT INTO test(id)VALUES (m);
nn:=n+1;
IF n=1000 THEN
COMMIT;
n:=0;
END IF;
END LOOP;
COMMIT;
END;
/
以上的相关内容就是对Oracle高级复制之同步复制的介绍,望你能有所收获。
发表评论
-
oracle中去重复记录 不用distinct
2011-07-22 10:30 102207用distinct关键字只能过 ... -
五种Oracle用户的授权与管理
2011-06-03 21:27 993创建和删除用户是Orac ... -
oracle 存储过程的基本语法
2011-06-03 08:32 1080oracle 存储过程的基本语法 1 ... -
oracle 日期加减的函数
2011-06-01 10:10 1949ADD_MONTHS:加月 SELECT SYS ... -
常用的比较复杂的SQL语句
2011-06-01 09:02 9441.动态更新某个字段 update ot_dstrregtax ... -
Oracle中用For Loop 替代Cursor
2011-05-29 09:44 1262我们在Oracle存储过程中需要遍历一张表,应该怎样做。我想大 ... -
Oracle常见问题汇总
2011-05-28 20:22 10921.ora-02085的解决:Database Link与GL ... -
oracle函数使用
2011-05-27 15:10 9051.怎样使用DBMS_OUTPUT.PUT_LINE 如果你是 ... -
ORACLE DUAL表详解+last_day
2011-05-27 13:34 9601、DUAL表的用途 Dual 是 Oracle中的一个实际存 ... -
Oracle 11g R2 for Win7旗舰版(64位)的安装步骤
2011-05-25 09:48 16911、下载Oracle 11g R2 for Windows的版 ... -
如何手动卸载oracle 11G
2011-05-25 08:27 23941、 开始->设置->控制面板->管理工具->服务 停止所有O ... -
应用存储过程按月建数据表
2011-05-24 21:43 1276为了方便数据库的存储、数据的备份、恢复,在 ... -
Oracle建立DBLINK的详细步骤记录
2011-05-24 21:26 1616试条件: 假 ... -
Oracle 查询一个数据表后通过遍历再插入另一个表中的两种写法
2011-05-24 21:10 6671第一种: 通过使用Oracle语句块 dec ... -
Oracle DB Link介绍
2011-05-24 20:55 9351。基本概念: 数据库连接串主要用于建立对远程数据 ... -
ETL测试流程图
2011-05-24 20:48 1494本文档主要介绍ETL测试的流程,以及一般 ... -
oracle安装问题集萃
2011-05-24 20:47 8131.oracle 交换空间大小过小 重新调整虚拟内存大小,以 ... -
Oracle JOB 用法小结
2011-05-23 16:36 813一、设置初始化参数 job_queue_processe ... -
创建OracleJob
2011-05-23 15:58 1126oracle job简介 主要的使用情景 定时在后 ... -
pl/sql中command window 与sql window有什么区别
2011-05-23 15:18 3646Command window实现了SQL*Plus的所有功能, ...
相关推荐
说到复制数据,你可能会想到oracle的其它一些同样实现数据复制功能的特性,比如说高级复制(Advanced Replication),Dataguard等等。 在9iR2之前高级复制应用比较广泛,高级复制也分两种:多主复制和基于物化视图...
§9.9 Oracle配置 110 §9.9.1 分布式系统 110 §9.9.2 多层系统 110 §9.9.3 Oracle并行服务器 110 §9.10 Oracle数据库增长的规划 111 §9.10.1 不同增长表的配置 111 §9.10.2 对增长表进行规划和分析 112 第10章...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
TOAD 的高级编辑窗口包括众多的特性来提高开发人员编写SQL语句的产品化程度。例如,简单地生成代码模板,在编写SQL前自动发现包的内容和列的名字等等。 SQL编辑器包括一个编辑窗口和运行结果窗口,允许开发人员在...
通过作业,定时同步两个数据库 SQLSERVER高级注入技巧 利用反射实现ASP.NET控件和数据实体之间的双向绑定,并且在客户端自动验证输入的内容是否合法 asp.net报表解决方法 SQLDMO类的使用 SQL过程自动C#封装,支持从表到...
笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!此时此...
简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!...