落叶
落叶
我也考虑过这个问题,最好的办法是,在SQL执行之前,将脱敏字段从SQL里去掉,不在结果集里展示脱敏字段,这个方式针对非MySQL数据库类型的数据库,还是可以接受的,如果从结果中进行字段脱敏,如果采用字段别名,就不太好处理 例如: select user,bankname as t from test 如果bankname是脱敏字段,执行之后,结果集中的列名是t,就没办法匹配了
> 参考:[hanchuanchuan/goInception#306](https://github.com/hanchuanchuan/goInception/issues/306) 如果在不更新代码的情况下,修改MySQL数据库的参数wait_timeout=3600,是不是可以临时解决这个archery执行时间超长的问题
我试过,将archery升级到1.10.0版本,goinception组件升级到1.3.0版本,报错依然未解决 
设置此参数,修改大表时,不检查从库
貌似设置成osc_recursion_method = "none" ,加上引号,就没有问题
我也遇到过,没仔细研究,把mysql容器去掉,使用自己搭建的MySQL数据库,就不会有问题
> 我遇到了类似的问题。 > > 版本:1.11.1 部署方式:源码部署 > > 执行sql上线“UPDATE `db1`.`table1` SET `col1` = 0 WHERE `id` = 25”时报错: > > Execute: You have an error in your SQL syntax; check...
你可以看看archery里的关于sql server的引擎,里面不检测sql,直接返回成功。建议你自己去实现检查 def execute_check(self, db_name=None, sql=""): """上线单执行前的检查, 返回Review set""" check_result = ReviewSet(full_sql=sql) # 切分语句,追加到检测结果中,默认全部检测通过 split_reg = re.compile("^GO$", re.I | re.M) sql = re.split(split_reg, sql, 0) sql = filter(None, sql) split_sql...