Oracle使用触发器实现两台不同服务器上的数据库的两张表进行数据同步增删改

本文介绍如何在Oracle数据库中通过触发器实现在两台不同服务器的数据库间,用户test1的LEGAL_CASE表与另一台服务器test用户的LEGAL_CASE表的数据同步。详细步骤包括创建DB LINK、验证连接及编写触发器,确保源库的增删改操作能即时反映到目标库。
摘要由CSDN通过智能技术生成

下面用oracle数据库进行测试,假设使用这两个表,192.168.2.2服务器上用户test1表LEGAL_CASE,192.168.2.3服务器上用户test密码123456表LEGAL_CASE。

需求:只需改动源库192.168.2.2服务器上的表,目标库192.168.2.3服务器上即可自动改变。

    条件:

        1.两个表能建立DB LINK,即两个数据库所在的服务器能互相ping通。

        2.两个表字段类型必须完全匹配,不能主表某字段能插入字符,而副表对应的某字段只能插入数字,不能主表字段插入的长度超过副表对应字段的最大长度。

下面开始:建立DB LINK和触发器都是在192.168.2.2数据库

        1.建立DB LINK,首先判断登录的用户是否有创建DB LINK 的权限,执行以下语句:

            -- 查看 test1 用户是否有创建DB LINK 权限   

select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='test1';

            如果能查询到结果,说明有权限创建DB LINK ,否则需要管理员角色创建权限(sys或system)

grant create public database link to test1;

 也可以用SQL的方式创建: 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值