Performance Schema Resumen Espanol

March 22, 2018 | Author: Cristianno Mazzollini | Category: Sql, My Sql, Domain Name System, Table (Database), Computer Data


Comments



Description

MySQL Madrid Users GroupResumen performance_schema Simon J Mudd | 20/02/2014 ¿Qué es performance_schema? ●  ●  ●  ●  Motor de MySQL especial Muestra el estado interno de MySQL: actual y pasado Disponible desde MySQL 5.5, interesante desde 5.6 Ofrece metricas de bajo nivel: puede ser complicado comprender los datos ●  En su configuración predeterminada no colecciona todo ●  Tener P_S da un overhead adicional pero sin ello estás ciego 2 determina que se hace con estas medidas ●  También existe de 3 tablas menos utilizadas: ●  setup_actors ●  setup_objects ●  setup_timers 3 .¿Cómo se configura? ●  Está habilitado cuando MySQL arranca a través de la siguiente opción en /etc/my.cnf ●  performance_schema = 1 ●  Hay 2 tablas principales de configuración: ●  setup_instruments (546 rows) – determina que que cosas están medidas ●  setup_consumers (12 rows) . +--------------------------------+---------+ | NAME | ENABLED | +--------------------------------+---------+ | events_stages_current | YES | | events_stages_history | YES | | events_stages_history_long | NO | | events_statements_current | YES | | events_statements_history | NO | | events_statements_history_long | NO | | events_waits_current | YES | | events_waits_history | YES | | events_waits_history_long | NO | | global_instrumentation | YES | | thread_instrumentation | YES | | statements_digest | YES | +--------------------------------+---------+ 12 rows in set (0.00 sec) 4 .setup_consumers mysql> SELECT * FROM setup_consumers. setup_consumers ●  Stages ●  Representa las diferentes etapas durante el procesamiento de un query ●  Statements ●  Información sobre diferentes comandos SQL que se está procesando ●  Waits ●  Dónde mysqld espera a un evento durante sus distintas tareas ●  Global_instrumentation ●  Información global 5 . setup_instruments mysql> SELECT * FROM setup_instruments. +-----------------------------------------------+---------+-------+ | NAME | ENABLED | TIMED | +-----------------------------------------------+---------+-------+ | wait/synch/mutex/sql/PAGE::lock | NO | NO | | wait/synch/mutex/sql/TC_LOG_MMAP::LOCK_sync | NO | NO | | wait/synch/mutex/sql/TC_LOG_MMAP::LOCK_active | NO | NO | | wait/synch/mutex/sql/TC_LOG_MMAP::LOCK_pool | NO | NO | | wait/synch/mutex/sql/LOCK_des_key_file | NO | NO | … +-----------------------------------------------+---------+-------+ 6 . setup_instruments ●  Hay entradas para cada etapa del procesamiento de un query y aquí se determina si se mide la información o no. 7 . ●  Por ejemplo: ●  ●  ●  ●  ●  ●  wait/synch/mutex/innodb/trx_mutex wait/synch/mutex/innodb/os_mutex wait/synch/rwlock/innodb/fil_space_latch wait/io/file/sql/binlog wait/io/file/sql/FRM …. 8 .6 tiene 52 tablas divididas entre: ●  ●  ●  ●  ●  ●  ●  ●  events_stages (8 tablas: información sobre etapas de un query) events_statements (9 tablas: información sobre statements) events_waits (9 tablas: información sobre donde MySQL espera) file_* (3 tablas: información sobre los archivos gestiondos por MySQL) host_* (refiere a hosts o clientes de MySQL) socket_* (refiere al uso de sockets por MySQL) table_ (refiere a tablas de MySQL) ….P_S tables ●  MySQL 5. alugunos ejemplos ●  Y ahora unos ejemplos… 9 .Menos teória. hosts ●  Los hosts que han conectado a MySQL: 10 . host_cache ●  Información sobre los hosts que han conectado a MySQL 11 . host_cache ●  Information on hosts connecting to MySQL 12 . Antes de MySQL 5.com/71382 13 .6 en algunos sistemas.host_cache ●  Me di cuenta que el tamaño del cache era demasiado pequeño y esto provoca más peticiones DNS para resolver el nombre de la dirección ip ●  Así que hay que configurar the host_cache_size en 5.6 el valor era determinado al compilar MySQL.mysql. ●  Relacionado: http://bugs. table_io_waits_summary_by_table ●  El tiempo que se espera al leer o escribir a una tabla 14 . file_io_summary_by_instance ●  El tiempo que se espera para el acceso a un archivo 15 . events_waits_history ●  ¿Dónde está esperando MySQL para su siguiente paso? 16 . Esperando para el procesamiento de comandos SQL 17 .ibd files) ●  3r.events_waits_history ●  Quizá no sorprende: ●  1 – Esperando para un COMMIT (escritura a los archivos ib_logfile) ●  2 – Esperando para un checkpointing (escritura a archivos . events_stages_history ●  Su configuración no está habilitada de manera predeterminada ●  Se configura así: 18 . events_stages_history ●  ¿Dónde está esperando durante el procesamiento SQL? 19 . P_S sizing 20 . P_S sizing ●  Las tablas que contienen información histórica contiene los últimos 10 eventos. 21 .000 eventos ●  En algunos casos puede ser necesario ajustar estos parametros. las tablas history_long contiene los últimos 10. ●  Su configuración requiere: 22 .events_statements ●  Lo que queremos ver todos: lo que hacen los desarrolladores y buscar los queries malos…. events_statements 23 . Contiene una serie de vistas sobre P_S 24 .ps_helper ●  Mark Leith desarrolló un schema que llamó ps_helper. útil para manipulación posterior si es necsario.ps_helper ●  Ahorra tiempo porque simplifica los SELECTs que tienes que realizar ●  No tiene coste: son VIEWs ●  Hay 2 tipos de VIEW: las bonitas con los datos formateados y otras con la información sin ordenar. ●  ps_helper estará incluido en MySQL 5.7 (con el nombre de schema sys) 25 . y así permite que pueden optimizar sus queries 26 .7 contiene más tablas ●  Sobre la utilización de memoria ●  Sobre replicación y la actividades de los distintos threads ●  Hay que comprender la información que contiene y compartirla con los desarrolladores.Resumen ●  Ha sido un resumen muy breve ●  P_S contiene mucha información muy útil ●  MySQL 5. Referencias Algunas referencias: ●  performance_schema ●  http://dev.mysql.com/doc/refman/5.com/MarkLeith/dbahelper/ ●  https://github.html ●  dba_helper / mysql-sys ●  https://github.com/MarkLeith/mysql-sys/ 27 .6/en/performanceschema.
Copyright © 2024 DOKUMEN.SITE Inc.