Советы по тюнингу MySQL от профессионала. Узнайте, как предотвратить проблемы с производительностью MySQL. Поймите, как MySQL оптимизирует и выполняет запросы.
Архитектура MySQL
Просмотр шагов, вовлеченных в выполнение запроса
Как протокол клиент/сервер влияет на MySQL
Понимание того, как оптимизатор запросов выполняет свою работу
Как уровень хранилища делает MySQL уникальным
Поиск кандидатов для оптимизации запросов
Использование Performance Schema, которая является настоящей находкой для выявления запросов для оптимизации, поскольку она позволяет нам измерять, где уходит время
Поиск нескольких запросов, за которыми скрывается основная часть нагрузки на систему. Проверка топ-1000 запросов обычно не стоит того, чтобы тратить на них время для оптимизации.
Как найти актуальную информацию из обилия представлений и метрик производительности, доступных в MySQL
Понимание того, почему операторы UPDATE и DELETE также считаются чтениями, хотя они в первую очередь представляют собой операторы записи. Это повлияет на ввод/вывод и, следовательно, на время ответа.
Анализ запросов
Понимание того, почему MySQL создает план запроса перед каждым запросом
Как читать планы запросов и понимать, как работает каждый из основных типов узлов в MySQL
Серия примеров, чтобы показать, как можно использовать вывод EXPLAIN, чтобы определить, где MySQL тратит время на ваш запрос, и почему
Какие ключевые моменты следует учитывать для выявления проблем с производительностью
Кластеризованный индекс и выбор первичного ключа
Когда мы работаем с таблицами, организованными по индексам, как в MySQL, выбор первичного индекса очень важен.
Мы увидим, как первичный ключ может влиять на количество случайного или последовательного ввода/вывода, размер вторичных индексов и количество страниц, которые должны быть считаны в буферный пул.
Мы будем понимать, почему оптимальный первичный ключ с точки зрения кластеризованного индекса должен быть как можно меньше (в байтах), постоянно увеличиваться монотонно и группировать строки, которые мы часто запрашиваем, вблизи друг от друга.
Индексирование для производительности
Каковы основные функции индекса?
Мы увидим, какие таблицы действительно нуждаются в индексе, а какие таблицы лучше всего обходить без него.
Мы проверим, как MySQL полагается на статистику для выбора лучшего индекса и как мы можем помочь ему принимать более обоснованные решения.
Составные индексы
Общие ошибки при использовании составных индексов
Как определить порядок столбцов для многоколоночных индексов
Умение логически мыслить о том, как работают индексы, и выбирать их на основе этого понимания, а не по правилам на основе опыта
Какие сценарии использования делают избыточные индексы полезными и когда их лучше избегать.
Работа над некоторыми тестами для проверки фактической производительности в цифрах.
Конфигурации сервера MySQL
Проверьте, как мы должны подходить к изменениям конфигурации MySQL, учитывая некоторые лучшие практики, чтобы мы могли успешно настроить MySQL.
Какие три параметра, скорее всего, принесут пользу MySQL при использовании нестандартных значений, и как их установить.
Ознакомьтесь с обзором жизненного цикла данных в InnoDB, чтобы у нас было предварительное представление при внесении изменений в конфигурацию.
Настройка параметров, важных для определенных сценариев использования, например, экземпляров буферного пула для высоконагруженных рабочих нагрузок, и как использовать параллельное выполнение для определенных запросов.
Транзакции и блокировки в MySQL
Транзакции очень важны для обеспечения целостности данных, но при неправильном использовании они могут вызвать серьезные проблемы с производительностью.
Получите обзор того, почему нужны блокировки и некоторые способы уменьшить их влияние.
Как индексы, разделение транзакции и уровни изоляции могут помочь уменьшить количество блокировок.
Варианты мониторинга и какие отчетные таблицы следует проверять для выявления проблем с блокировками.
Введение в масштабирование MySQL
Что означает масштабирование MySQL, и мы рассмотрим различные оси, по которым нам может потребоваться масштабироваться.
Понимание того, как масштабировать различные виды нагрузок
Репликация и почему нам нужно использовать Read-Pools, Health Checks и Service Discovery
Какие основные проблемы и подводные камни при принятии решения о фрагментации базы данных
Как разбивать данные в MySQL
Какие сценарии использования и преимущества использования очереди
Основные концепции для масштабирования записей с использованием фрагментации
Посмотреть больше
Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум
Ограничение времени просмотра
Вы можете просматривать пробный урок только 10 минут. Получите полный доступ, чтобы смотреть без ограничений.
Udemy - одна из самых больших площадок в мире по доставке обучающего контента от разных авторов всего мира. Присутсвуют курсы практически на любую тему.