Red de conocimiento informático - Material del sitio web - ¿Cómo utilizar la herramienta de prueba de estrés de rendimiento integrada de MySQL, mysqlslap?

¿Cómo utilizar la herramienta de prueba de estrés de rendimiento integrada de MySQL, mysqlslap?

La sintaxis de uso es la siguiente:

# MySQL slap[opción]

Descripción detallada de los parámetros comunes [opción]:

- auto-generate-sql, -a sql, -a genera automáticamente tablas y datos de prueba, es decir, utiliza el script SQL generado por la herramienta mysqlslap para probar la presión de concurrencia.

-auto-generate-SQL-load-type = tipo El tipo de declaración de prueba. Indica si el entorno que se va a probar son operaciones de lectura, operaciones de escritura o una combinación de las dos. Los valores incluyen: lectura, escritura, escritura, actualización y mixto (predeterminado).

-auto-generate-SQL-add-auto-increment significa agregar automáticamente la columna auto_increment a la tabla generada. Es compatible con la versión 5.1.18.

-number-char-cols = n, -x n ¿Cuántas columnas de tipo de caracteres se incluyen en la tabla de prueba generada automáticamente? El valor predeterminado es 1.

-number-int-cols = n, -y n¿Cuántas columnas numéricas se incluyen en la tabla de prueba generada automáticamente? El valor predeterminado es 1.

-$ NÚMERO-de-consultas = n número total de consultas de prueba (número de clientes simultáneos × número de consultas por cliente)

- consulta=nombre, -q, -q Utilice scripts autodefinidos para ejecutar pruebas. Por ejemplo, puede llamar a procedimientos almacenados personalizados o declaraciones SQL para ejecutar pruebas.

- create-schema representa el nombre de la biblioteca de prueba y el modo de prueba definidos por el usuario. El esquema en MySQL también es una base de datos.

-commint = nCuántos DML enviar a la vez.

-compress, -c Si tanto el servidor como el cliente admiten la compresión, la transmisión de información se comprime.

- concurrency=N, -c n, -c N representa la cantidad de concurrencia, es decir, cuántos clientes se simulan para ejecutar select al mismo tiempo. Puede especificar varios valores, separados por comas o el valor especificado por el parámetro -delimiter. Por ejemplo: - Simultaneidad = 100, 200, 500.

-motor = nombre_motor, -e nombre_motor indica el motor que se va a probar. Puede haber varios motores, separados por separadores. Por ejemplo: motores = myisam, innodb, InnoDB.

- iterations=N, -i N, -i n El número de iteraciones de ejecución de la prueba representa cuántas veces se debe ejecutar la prueba en diferentes entornos simultáneos.

- only-print solo imprime la declaración de prueba sin ejecutarla.

-detach = nDesconectar y volver a conectar después de ejecutar n sentencias.

-debug-info, -t imprime información sobre la memoria y la CPU.

Descripción:

El proceso de prueba requiere generar una tabla de prueba e insertar datos de prueba. Este mysqlslap se puede generar automáticamente y se genera un esquema mysqlslap de forma predeterminada. Si ya existe, elimínelo primero. Puede utilizar -only-print para imprimir el proceso de prueba real. No habrá rastros en la base de datos una vez completada toda la prueba.

Ejemplos de varios parámetros de prueba (-p seguido de la contraseña de root para mysql):

Pruebas de un solo subproceso. Lo que hizo la prueba.

# MySQL slap-a-uroot-p 123456

Pruebas multiproceso. Utilice --concurrency para simular conexiones simultáneas.

# MySQL slap-a-c 100-u root-p 123456

Pruebas iterativas. Se utiliza para obtener un promedio mediante la realización de múltiples pruebas.

# MySQL slap-a-I 10-u root-p 123456

# mysqlslap -generar automáticamente-SQL-add-auto increment-a-u root-p 123456

# MySQL slap-a-auto-generate-SQL-load-type = read-u root-p 123456

# MySQL slap-a-auto-generate-secundario-indexes = 3-u root- p 123456

# MySQL slap-a-auto-generate-SQL-write-number = 1000-u root-p 123456

# MySQL slap-create-schema world-q " seleccione recuento (*) de la ciudad "-u root-p 123456

# MySQL slap-a-e innodb-ur oot-p 123456

# MySQL slap-a-number-of- query = 10-u root-p 123456

Prueba y compara el rendimiento de diferentes motores de almacenamiento al mismo tiempo:

# mysqlslap -a - concurrency=50, 100 - number of consultas 1000 - número de iteraciones =5 -engine=myisam,innodb-debug-info-ur oot-p 123456

Utilice 50 y 100 pruebas de ejecución simultáneas respectivamente, ejecutando un total de 1000 consultas:

# mysqlslap -a -concurrency=50, 100 -query number 1000-debug-info-ur oot-p 123456

50 y 100 concurrencias obtienen un punto de referencia respectivamente. Cuanto mayor sea la simultaneidad, más tiempo llevará ejecutar todas las consultas. Para mayor precisión, puede iterar la prueba varias veces:

# mysqlslap -a -concurrency=50,100 -number of queries 1000 -number of iterations=5-debug-info-u root-p 123456