SQL audit and execution, as a very important part of the daily work of THE DBA, has always been handled manually, with low efficiency and no guarantee of quality. In order to standardize operations and improve efficiency, we have decided to introduce Inception, a very popular SQL automatic auditing tool on the market.
It took one week to read the inception official documentation and set up a simple test environment, and three days to write a web user interface (internal name: Overmind, hereinafter referred to as Overmind). Currently, various tests and manuals are being written, and it has not been formally integrated into our process for use. Use experience will be updated after formal use.
Inception
- Github:github.com/mysql-incep…
- The official document: mysql – inception. Making. IO/inception – d…
Inception is an open source Mysql automation tool with practical functions such as SQL audit, execution, rollback, etc. It is developed by a domestic expert based on Mysql source code, and can explicitly, detailed, and accurately audit Mysql SQL statements. Its working mode is exactly the same as that of Mysql. You can connect directly using the mysql client. Unfortunately, it stopped updating 2 years ago, but it is compatible with most mysql versions and is still the leading open source SQL auditing tool.
Inception is structured as follows:
Overmind
Approval process
Our audit process is now divided into two parts:
1. Offline test environments such as Dev and Qa: To simplify the process, the development test environment can be reviewed or executed directly by the developer through the OverMind system
2.Prod production environment: Production environment is mainly security. After Dev and Qa environment are successfully executed, there will be an “Apply for online” button on the details page. Click “apply for online” and an email will be automatically sent to DBA
System is introduced
-
Basic configuration page: You can directly configure Inception information on the page to facilitate migration
-
Database information entry: equivalent to a simple database CMDB system, can manage database information
-
Audit task submission: two modes are supported: audit and execution. The audit mode only gives audit results, and the execution mode is audited before execution
-
Audit results display: Display all information about SQL audit in detail, including user submission, operation execution, audit results, and so on
-
Task list page: It is very convenient to view only your own submitted tasks, or to view fixed project, fixed environment tasks
About open source
In my opinion, open source is a very solemn thing. Before LEARNING Python, I wrote a simple background sadmin (github or Gitee can be searched), but stopped updating for some reasons. Currently, I don’t have the time or energy to do long-term support and maintenance, so I don’t plan to put the source code on Github for now. There is already a great open source product on this type of site, searchable and installed on Github.
Write in the last
- Say thank you first! Thank you for Inception. It is definitely a blessing for the DBA community
- The reason why I was able to write Overmind in 3 days was that I mainly relied on other project frameworks that had been written before and made modifications on this basis, which was very quick
- Tool deployment and page writing are relatively simple, which can be handled within the team. It is difficult to push out tools and integrate them into the current process. The rule set for the team is A. Complete documentation, users know which SQL failed before the audit, and know how to modify to succeed when the audit failed, b. The perception of the user should be minimized, and the use of Overmind should not cause extra trouble, so that the user can use it pleasantly
- I hope the author or other gods will continue to update Inception for the benefit of dbAs