Curso de optimización de MySQL para desarrolladores

Curso de optimización de MySQL para utilizarlo en el desarrollo de aplicaciones.
Avanzado
20 Horas
Curso Presencial

Descripción del curso

Curso avanzado para desarrolladores que quieren aprender a optimizar bases de datos MySQL y utilizarlas en sus propias aplicaciones.

Objetivos

· Ampliar conocimientos profundos de MySQL de cara a conseguir un uso óptimo del SGBD open source por excelencia
· Identificar y evitar cuellos de botella en ejecución de querys
· Favorecer un diseño óptimo de los esquemas de BBDD

Requisitos

Conocimientos básicos de MySQL y avanzados de programación en PHP, Java o similar.

Orientado a

Desarrolladores que utilizan o quieren utilizar bases de datos MySQL conectadas con sus aplicaciones.

Programa

  1. Arquitectura e historia de MySQL
    1. Arquitectura lógica de MySQL
      1. Optimización y Ejecución
    2. Control de concurrencias
      1. Bloqueos Lectura/Escritura
      2. Granularidad de bloqueo
        1. Bloqueos de tabla
        2. Bloqueos de fila
    3. Transacciones
    4. Motores de almacenamiento de MySQL
      1. Motor InnoDB
      2. Motor MyISAM
      3. Eligiendo el motor adecuado
      4. Conversión de tablas
  2. Benchmark
    1. ¿Por qué?
    2. Estrategias
    3. Tácticas
    4. Herramientas
    5. Ejemplos
  3. Perfiles de rendimiento del servidor
    1. Introducción a la optimización del rendimiento
    2. Perfil de aplicación
    3. Perfil de Consultas MySQL
  4. Optimización de Esquema y de Tipos de Datos
    1. Elegir tipos de datos óptimos
    2. Errores comunes en el diseño de esquemas
    3. Normalización y Desnormalización
      1. Pros y contras
    4. Caché y Tablas resumen
    5. Acelerar ALTER TABLE
  5. Indexación para alto rendimiento
    1. Bases de indexado
    2. Beneficios
    3. Ejemplo
    4. Mantenimiento de Índices y Tablas
  6. Optimización de rendimiento de consultas
    1. ¿Por qué son lentas las consultas?
    2. Bases de una consulta lenta
    3. Formas de reestructurar las consultas
    4. Bases de la ejecución de consultas
    5. Límites del Optimizador de Consultas de MySQL
    6. Ejemplo
  7. Características avanzadas de MySQL
    1. Particionado de Tablas
    2. Vistas
    3. Cursores
    4. Character Set y Collation
    5. Caché de Consultas de MySQL
  8. Optimización de ajustes del servidor
  9. Optimización del sistema operativo y del hardware
  10. Replicación
    1. Introducción
    2. Configurar replicación
    3. Topologías de replicación
    4. Administración y mantenimiento
    5. Problemas y soluciones
  11. Optimización a nivel de aplicación
    1. Problemas comunes
    2. Problemas de servidor web
    3. Caché