录制MySQL DELETE语句

录制MySQL DELETE语句,mysql,etl,informatica,Mysql,Etl,Informatica,我们有一个使用Informatica的MySQL->OracleETL,它适用于除DELETE之外的所有语句。不幸的是,DELETE会使记录消失,这样Informatica就再也看不到该记录,无法在Oracle中将其删除/过期 人们是如何录制MySQLDELETE语句的 这些表是InnoDB(ACID兼容),所有记录上都有唯一的主键(auto_increment)。我们在Windows上使用开源MySQL 出于性能原因,我们不希望使用常规查询日志。我们还希望保留股票MySQL二进制,而不是重新编

我们有一个使用Informatica的MySQL->OracleETL,它适用于除
DELETE
之外的所有语句。不幸的是,
DELETE
会使记录消失,这样Informatica就再也看不到该记录,无法在Oracle中将其删除/过期

人们是如何录制MySQL
DELETE
语句的

这些表是InnoDB(ACID兼容),所有记录上都有唯一的主键(
auto_increment
)。我们在Windows上使用开源MySQL


出于性能原因,我们不希望使用常规查询日志。我们还希望保留股票MySQL二进制,而不是重新编译我们自己的特殊
DELETE
语句。

一个可能的解决方案是永远不要从数据库中删除任何内容。我避免从数据库中删除,因为这样信息将永远丢失。我更喜欢通过向表中添加适当的列来将信息标记为无效或过时


另一个类似的解决方案是使用将要删除的记录插入到审核表中,然后删除信息。在Oracle端使用带Informatica的insert做同样的事情。

我同意第一段。我们在实现触发器方面确实是有选择性的,但我认为我也同意第二段作为可行的选择。是的,我经常在布尔
活动
列中实现
插入
,作为表示
删除
的一种方式。然后必须调整
选择
s以过滤掉“
删除
d”数据