说说如何做oracle的SQL审核呢
短信预约 -IT技能 免费直播动态提醒
说说如何做oracle database 的sql审核:
1. 如何做到预先的语法检查呢
首先要熟悉繁杂的oracle语法规范,并能提前报错(这不是问题)
2. DDL 语句列的检查,索引的检查这些是直接执行才会发现的,难道要把表的结构全部导出来,操作检查一遍吗
(貌似可行) 那么要准备一个存储其他库表结构的 oracle database
3.DML 语句如何检查数据冲突呢?
可以使用不提交事物的方式检查,但如果碰到大量数据的操作呢?会造成锁的
4. 如何记录回滚语句?
能否解析日志呢,日志先写入redo,logminer 会降低oracle性能
可不去回滚DDL 语句,和insert ,delete 语句,
主要预防update 语句,那么提前把update前 语句的数据select 备份起来,而不直接生成回滚update.
5. 这个工作流程是什么样子的呢?
a. 目标库的元数据备份到审核库
b. 外部传参给 审核程序,参数包括(ip,port,username,password,sql, backip,backport, backuser,backpass)
c. 审核程序先在审核库预执行,看看是否有语法错误,对于DDL 语句就直接更新了,对于insert 语句就直接执行了,
d. 对于delete语句检查句法,因此,delete 之前要先备份 导入到审核库,无法检查数据是否存在,
e. 对于update语句,先要导入到备份库,只能检查语法,因为对于多表依赖的update 无法导出多表。
检查完之后就代表通过了,就操作线上库
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341