oracle,数据解决方案.docx
文本预览下载声明
oracle,数据解决方案
篇一:Oracle数据库同步解决方案 情景模拟 现在有两台服务器: 1) 机器名:ThinkPad IP: Oracle SID:ORCL 2) 机器名:DELL IP: Oracle SID: ORCL 目的:将ThinkPad机器上用户Geosoc里面的BookMark表同步到DELL机器里面去。 (一) 高级复制 1. 查看是否具备高级复制功能 首先,数据库要具备高级复制功能(用system身份登录数据库,查看v$option视图,如果其中Advanced replication为TRUE,则支持高级复制功能;否则不支持)。 select * from v$option 2. 设置相应参数 本例的先决条件:你需要设置好相应的参数, job_queue_processes需要大于0, global_name=true, 并且建立相应的db link alter system set global_names=true scope=both; 3. 创建复制管理员账号 在两个数据库上分别创建复制管事员用户REPADMIN(该用户名及密码可以任意设置,建议统一采用该名字,密码统一为orcl)。 --创建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_any_schema(REPADMIN); --授予repadmin用户权限可以为任何表创建snapshot logs GRANT comment any table TO REPADMIN; GRANT lock any table TO REPADMIN; --指定repadmin用户为propagator,并授予执行任何procedure的权限 EXECUTE dbms_defer__propagator(REPADMIN); GRANT execute any procedure TO REPADMIN; 4. 更改数据库全局名 由于后面创建数据库链接(Database link)时需要用到数据库全局名,因此遇到同名的数据库全局名时需要更改其数据库名。 ThinkPad机器:改为 ORCL_THINKPAD alter database rename global_name to ORCL_THINKPAD; DELL机器:改为 ORCL_DELL alter database rename global_name to ORCL_THINKPAD; 5. 在两个数据库上分别建立到对方的数据库链接 建立数据库链接的前提是两个数据库能互相访问,因此需要在数据库端先建立互相的连接本地命名。 由于开启了Global_names为True,因此链接名必须与Global名一致。 ThinkPad: 建立到DELL的本地命名为ORCL154。 create public database link ORCL_DELL connect to REPADMIN identified by orcl using ORCL154; DELL:建立到ThinkPad的本地命名为ORCL190。 create public database link ORCL_THINKPAD connect to REPADMIN identified by orcl using ORCL190; 建立好链接后,可以在各自的机器上测试链接是否成功。 Select * from BookMark@ORCL_DELL 6. 创建复制组 在需要被复制的数据库上建立复制组,本例中是ThinkPad机器需要被复制,因此在此数据库上建立复制组。 以REPADMIN登录数据库ORCL a) 创建复制组: execute dbms__master_repgroup(rep_geo
显示全部