¡Increíble! ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

¡Increíble! ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

收录于话题
#MySQL从入门到放弃
26个

Haga clic en la "Ruta técnica de los trabajadores migrantes" arriba, seleccione "Establecer como estrella" y
responda "1024" para obtener materiales de aprendizaje exclusivos.

Antes de eso, el trabajador migrante también introdujo una herramienta de administración SQL de código abierto: finalización automática, reversión. Introducir una herramienta de diagnóstico visual de SQL.
Hoy, el trabajador migrante recomienda otra herramienta de auditoría SQL: goinception.

Introducción a goinception

goInception es una herramienta de operación y mantenimiento de MySQL que integra auditoría, ejecución, respaldo y generación de declaraciones de reversión. A través del análisis gramatical de SQL ejecutado, devuelve resultados de auditoría basados ​​en reglas personalizadas, y proporciona ejecución, respaldo y generación de declaraciones de reversión. Caracteristicas.

dirección de github: https://github.com/hanchuanchuan/goInception

Documento: https://hanchuanchuan.github.io/goInception/

arquitectura de inicio

¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

instalación goinception

El funcionario proporciona varios métodos de instalación, como sigue.

  • 1. Instalación del
    código fuente La instalación del código fuente requiere un entorno de go V1.2 o superior, y use go mod para la gestión de dependencias.
[root@centos7 ~]# git clone https://github.com/hanchuanchuan/goInception.git
[root@centos7 ~]# cd goInception
[root@centos7 ~]# make parser
[root@centos7 ~]# go build -o goInception tidb-server/main.go
  • 2. camino de la ventana acoplable

[root@centos7 ~]# docker pull hanchuanchuan/goinception
[root@centos7 ~]# mkdir goinception
[root@centos7 ~]# tar zxf goInception-linux-amd64-v1.2.3.tar.gz -C ./goinception/
[root@centos7 ~]# cd goinception/
[root@centos7 goinception]# ll
total 38476
drwxr-xr-x 2 root root        33 Aug 30 03:48 config
-rwxr-xr-x 1  501 games 39399424 May 22 07:45 goInception

Una vez completada la descompresión, verá un archivo de configuración predeterminado en el directorio de configuración: config.toml.default, puede modificarlo de acuerdo con la situación real.

goInception utiliza la reconstrucción del código fuente de TiDB, por lo que algunos parámetros pueden hacer referencia a documentos relacionados con TiDB

El archivo config.toml consta de varias partes, que son la configuración más externa, como host, puerto, etc., y cada grupo, como [inc], [log], etc. Ejemplo (Este ejemplo solo muestra la estructura del archivo config.toml, consulte los parámetros detallados): https://github.com/hanchuanchuan/goInception/blob/master/config/config.toml.default


host = "0.0.0.0"
port = 4000
path = "/tmp/tidb"

[log]
# 日志参数
level = "info"
format = "text"

[log.file]
# 日志文件参数
filename = ""
max-size = 300

[inc]
# 审核选项
enable_nullable = true
enable_drop_table = false
check_table_comment = false
check_column_comment = false
# 等等...

[osc]
# pt-osc参数
osc_on = false
osc_min_table_size = 16

[ghost]
# gh-ost参数
ghost_allow_on_master = true

Una vez completada la modificación de la configuración, se puede iniciar normalmente.


[root@centos7 goinception]# ./goInception -config=config/config.toml
[root@centos7 ~]# netstat -lntp|grep 4000
tcp6   0   0 :::4000    :::*    LISTEN    1250/./goInception 

Caso de uso

/*--user=root;--password=root;--host=127.0.0.1;--check=1;--port=3306;*/
inception_magic_start;
use test;
create table t1(id int primary key);
inception_magic_commit;

Otra introducción

1. Información de resultado

Hay dos tipos de información devuelta a los usuarios,

  • Una es que hay errores en la información básica enviada a goInception, como información de fuente incompleta o errores en la información de fuente. En este caso, informe directamente las excepciones, incluidos códigos de error y mensajes de error, que son los mismos que los del servidor MySQL. Se puede manipular normalmente en el exterior.
  • En segundo lugar, si no existe tal problema, se informará al cliente del resultado de la verificación en forma de un conjunto de resultados. Consistente con el conjunto de resultados nativo de mysql. En el conjunto de resultados devuelto, cada fila de datos es una declaración SQL enviada. GoInception desensambla internamente todos los bloques de declaraciones enviados uno por uno y los devuelve en forma de conjunto de resultados. Para cada declaración, ¿cuál es el problema o el estado? Los resultados son claros de un vistazo.
    Nota: Si hay un error gramatical en la declaración, no puede continuar, porque goInception ya no puede separar las declaraciones restantes. En este momento, las múltiples filas que se han verificado normalmente antes se devuelven con múltiples conjuntos de resultados. La siguiente declaración de error es Se devuelve una línea, por supuesto, el mensaje de error es un error de sintaxis.

2. Viene con función de respaldo

Con su propia función de respaldo, primero configure config.toml cuando se inicie el servicio (ubicado en la sección [inc])

参数  默认
可选范围
说明

backup_host ""  string  备份数据库IP地址
backup_port 0   int 备份数据库端口
backup_user ""  string  备份数据库用户名
backup_password ""  string  备份数据库密码
并且在执行sql时,添加 --backup=true 或 --backup=1 选项。

3. Reglas de auditoría

Para obtener información detallada sobre las reglas de auditoría relacionadas y las opciones de auditoría, consulte: https://hanchuanchuan.github.io/goInception/rules.html

Comparar Inception

1. Comparación de funciones

¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

2. Velocidad
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

3. Utilice

¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!
Este tipo de herramienta libera las manos del DBA hasta cierto punto y también puede evitar errores en gran medida, asegurando así la tasa correcta de ejecución de SQL. Al mismo tiempo, también proporciona la función de reversión de SQL para revertir en caso de error. Seguridad e integridad de los datos.
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

Lectura recomendada ¡Haga clic en el título para saltar al
error! Redis 6.0.8 se lanza con urgencia, ¡actualice lo antes posible!
Los primeros en adoptar el sistema operativo Huawei Hongmeng, mi primer "hola mundo" es el
mapa mental de aprendizaje de Linux / C / C ++ más completo, ¡recójalo!
¡Solo un paso, prostituta permanente! ¡Úselo de forma discreta!
Conceptos básicos de la red de contenedores de Docker
¿Por qué HTTPS es seguro?
¿Se puede usar SSH solo en hosts remotos de Linux? ¡Eso significa que eres demasiado joven!
¡Increíble!  ¡Recomiendo una herramienta de operación y mantenimiento automatizado MySQL!

Incluido en el tema #MySQL desde la entrada para renunciar a
26
Ge

Supongo que te gusta

Origin blog.51cto.com/mingongge/2554293
Recomendado
Clasificación