SQL审核工具goInception示例讲解

栏目: 数据库 · 发布时间: 6年前

内容简介:本文主要对goInception工具做一些简单介绍,并举例说明其主要做什么。goInception是一个集审核、执行、备份及生成回滚语句于一身的MySQL运维工具, 通过对执行SQL的语法解析,返回基于自定义规则的审核结果,并提供执行和备份及生成回滚语句的功能。goInception基于TiDB的语法解析器,和业内有名的inpcetion审核工具重构。

本文主要对goInception工具做一些简单介绍,并举例说明其主要做什么。

介绍

goInception是一个集审核、执行、备份及生成回滚语句于一身的 MySQL 运维工具, 通过对执行 SQL 的语法解析,返回基于自定义规则的审核结果,并提供执行和备份及生成回滚语句的功能。

goInception基于TiDB的语法解析器,和业内有名的inpcetion审核 工具 重构。

面向读者:该文主要面向于后端开发、DBA或运维小伙伴,通过举例说明goInception大概做了哪些事,关于安装和使用等均可以查看 使用文档 github项目首页 。另外, 除安装以外 ,现在很多inception相关的资料和文章等,均可查阅,很多都是通用的。

架构图:(摘自inception)

SQL审核工具goInception示例讲解

goInception类似于mysql服务,可以连接到服务端口,执行SQL语句。 接下来通过一个示例来说明goInception具体做了哪些操作。

审核示例

在调用goInception时,需要指定要访问的生产库地址,所以需要一种特殊语法形式, goInception延用inception的使用方式,在审核的sql开始前添加注释来指定远端服务器,并在sql的前后添加特殊标识以区分待审核语句,示例如下:

/*--host=127.0.0.1;--port=3306;--user=xxx;--password=xxx;--check=0;*/
inception_magic_start;
use db;
一个或多个sql,支持大多数DDL和DML语法;
inception_magic_commit;
复制代码

各选项说明

参数 默认值 数据类型 说明
host '' string 线上数据库IP地址
port 0 int 线上数据库端口
user '' string 线上数据库用户名
password '' string 线上数据库密码
check false bool 开启审核功能
execute false bool 开启执行功能
backup false bool 开启备份功能,仅在执行时生效
ignore_warnings false bool 是否忽略警告,仅在执行时生效。该参数控制有警告时是继续执行还是中止

要审核的语句:

create table dbtest.table1(
    id int unsigned auto_increment primary key,
    name varchar(20)
    ) engine = innodb default character set utf8;
insert into dbtest.table1 values(1,'aaa'),(2,'bbb');
复制代码

那调用时可以变为如下形式:

/*--host=127.0.0.1;--port=3306;--user=xxx;--password=xxx;--execute=1;--backup=1;--ignore_warnings=1;*/
inception_magic_start;
use dbtest;
create table table1(
    id int unsigned auto_increment primary key,
    name varchar(20)
    ) engine = innodb default character set utf8;
insert into table1 values(1,'aaa'),(2,'bbb');
inception_magic_commit;
复制代码

其中,

  • 为了方便,可以通过use切换数据库,上下文自动保持该数据库
  • 为讲述更多涉及的功能,我们开启了执行和备份参数,此时仍会先进行审核,只有在审核通过之后才会真正执行

goInception内部会进行三个阶段的操作,分别是审核阶段,执行阶段和备份阶段,接下来逐一讲解。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

金融数量分析

金融数量分析

郑志勇 / 北京航空航天大学出版社 / 2014-7-1 / CNY 58.00

《金融数量分析——基于MATLAB编程(第3版)》一书中的案例均来源于作者的工作实际,并充分体现“案例的实用性、程序的可模仿性”,程序中附有详细的注释。例如,投资组合管理、KMV模型计算、期权定价模型与数值方法、风险价值VaR的计算等案例程序,读者可以直接使用或根据需要在源代码的基础上修改、完善。 本书共23章。前两章分别对金融市场的基本概况与MATLAB的基础知识进行概述;接下来为20个金......一起来看看 《金融数量分析》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具