AuditTrail研究

为了将Oracle迁移到MySQL,过程中需要做增量数据的记录。因此想了几种方案:

1. 如果表后面有modifydate这个字段的话,就可以按照这个字段来迁移表,将在dump时间之后修改的数据做迁移

2.在需要做增量迁移的表上建trigger,将insert,update,delete的操作记录下来。

3.用oracle自带的audit trail功能来做

 

接下来详细介绍一下audit trail

参考资料:http://www.oracle-base.com/articles/10g/auditing-10gr2.php

               http://hi.baidu.com/sonmeika/item/7cc5f9311e8731b8633aff16

 

*打开audit trail的功能

SQL> conn /as sysdba
SQL> show parameter audit

SQL> alter system set audit_sys_operations=TRUE scope=spfile;    --审计管理用户(以sysdba/sysoper角色登陆)
SQL> alter system set audit_trail=db,extended scope=spfile;
SQL> startup force;
SQL> show parameter audit

SQL>AUDIT insert,update,delete ON z7admin.service by access;//审计 插入,更新,删除

SQL>update service set license_limit = 200 where id = 0;

SQL>select * from sys.aud$;

 

audit trail相对于我们系统的缺点:

1.需要oracle 10之后才有的功能

2.因为迁移后的系统和以前的系统的表结构可能不同,列的个数有可能有所不同,因此用audit trail会有些错误

3.因为audit trial记录的语句有可能是多表关联的,因此在数据迁移的时候,就可能出现数据不一致的情况

 

经过测试,audit tail的性能和用trigger的性能差不多。

 

因此计划还是不用audit tail

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值