怅然|mysql管理员审核SQL的必备利器,背锅概率至少下降50%( 二 )
/*--user=xucl;--password=xuclxucl123;--host=127.0.0.1;--execute=1;--port=3308;*/
那你如果想备份的话 , 添加选项--backup=1即可
/*--user=xucl;--password=xuclxucl123;--host=127.0.0.1;--execute=1;--backup=1;--port=3308;*/
审核规则goinception的审核规则可以见文档:我捡了一些我认为比较重要的审核规则 , 列成表格如下:create table
1 表属性
2 列属性
3 索引属性检查项
4 UPDATE/DELETE
5 INSERT
6 SELECT
使用感受简单测试了一下goinception , 整体体验下来感觉还是很不错的 , 相比于之前的inception来说 , goinception有如下几个优点:
- 安装部署非常简单 , 官方直接提供了二进制包
- 集成了gh-ost无需另外安装 , 同时也提供pt-osc方式执行DDL
- 提供了基于表大小的ALTER执行选项 , 并且可配置大小
- 支持关联更新 , inception本身是不支持的
- 提供了更加丰富的审核规则选项 , 并且是基于MySQL5.7的 , 相比于inception来说支持度更好
- 长期稳定更新 , 从github上的commit记录看作者还是更新得很勤奋的
- 更快的备份功能 , 之前使用inception的时候经常会碰到需要备份的binlog过大 , 网络超时的现象(从文档上看goinception使用的批量备份 , 据说速度能快很多)
先说一下我们公司的情况 , 我们公司有流程中心 , 也就是开发会在上面选择库 , 提交SQL , DBA收到工单以后人工审核 , 手工执行 。
在审核过程中 , 对于DBA来说 , 肉眼审核也太过于辛酸了 , 手工执行一不小心就是背黑锅 。 所以 , 基于goinception , 我这边提供了几个restful的接口 , 分别如下:
- db信息接口 , 根据用户权限 , 返回该用户所能看到的dbname
- SQL检查接口 , 用户提交SQL , 调用goinception进行审核 , 审核通过以后到DBA
- SQL执行接口 , DBA选择执行的实例 , 调用goinception进行SQL执行 , 执行完成以后通知开发工单完成
- 开发查看工单 , 可以下载对应的回滚SQL
推荐阅读
- 怅然|华为虽好但别乱选,这三款才是极致性价比,看看哪款更让你心动
- IT世界|导致MySQL索引失效的几种常见写法,请看这里
- 怅然|快看|华为出货量或降至第三;vivoWatch即将发布
- 龙之队|聊聊Mysql——慢sql优化方法论
- 怅然|高通官宣好消息!这下各大运营商安心了,5G基站耗电问题解决
- 怅然|有了雷蛇无线生产力套装,再也不用怕被同事「白眼」了
- 怅然|新能源汽车频繁起火自燃,专家坦言,别怪电池,怪你自己
- 怅然|基于Ansible和Devops的一键测试环境部署实践
- 怅然|时尚创意畅享10手机壳,彰显你独特品位个性
- 怅然|美考虑切断华为最后退路 官方紧急声明太卑微 网友:读起来心酸