MySQL. Оптимизация производительности
Бэрон Шварц, Петр Зайцев, Вадим Ткаченко, Джереми Д. Заводны, Арьен Ленц, Дерек Дж. Бэллинг
Авторы этой книги - известные специалисты с многолетней практикой - рассказывают о том, как создавать быстрые и надежные системы на основе MySQL. Ими подробно описываются различные нетривиальные подходы, которые позволят задействовать всю мощь этой СУБД.
Рассматриваются методы проектирования схем, индексов и запросов для достижения максимальной производительности. Предлагаются детальные указания по настройке сервера MySQL, операционной системы и оборудования для полного раскрытия их потенциала. Описаны безопасные способы масштабирования приложений, основанные на репликации и балансировании нагрузки.
Второе издание полностью переработано и существенно дополнено, особое внимание уделено отказоустойчивости, безопасности и обеспечению целостности данных.
Книга рекомендуется как новичкам, так и опытным пользователям, которые хотели бы увеличить производительность своих приложений на базе MySQL.
Издательство: Символ-Плюс, 2010 г.
ISBN 978-5-93286-153-0
Количество страниц: 832.
Содержание книги «MySQL. Оптимизация производительности»:
- 9 Предисловие
- 10 Введение
- 23 1. Архитектура MySQL
- 24 Логическая архитектура MySQL
- 26 Управление конкурентным доступом
- 29 Транзакции
- 37 Multiversion Concurrency Control (MVCC)
- 39 Подсистемы хранения в MySQL
- 60 2. Поиск узких мест: эталонное тестирование и профилирование
- 61 Почему нужно тестировать производительность?
- 62 Стратегии эталонного тестирования
- 66 Тактики эталонного тестирования
- 72 Инструменты эталонного тестирования
- 76 Примеры эталонного тестирования
- 86 Профилирование
- 112 Профилирование операционной системы
- 116 3. Оптимизация схемы и индексирование
- 117 Выбор оптимальных типов данных
- 135 Основы индексирования
- 147 Стратегии индексирования для достижения высокой производительности
- 176 Практические примеры индексирования
- 182 Обслуживание индексов и таблиц
- 186 Нормализация и денормализация
- 193 Ускорение работы команды ALTER TABLE
- 197 Замечания о подсистемах хранения
- 200 4. Оптимизация запросов
- 200 Основная причина замедления: оптимизируйте доступ к данным
- 206 Способы реструктуризации запросов
- 209 Основные принципы выполнения запросов
- 232 Ограничения оптимизатора MySQL
- 242 Оптимизация запросов конкретных типов
- 250 Подсказки оптимизатору запросов
- 253 Переменные, определяемые пользователем
- 261 5. Дополнительные средства MySQL
- 261 Кэш запросов MySQL
- 275 Хранение кода внутри MySQL
- 284 Курсоры
- 285 Подготовленные команды
- 290 Определяемые пользователем функции
- 292 Представления
- 299 Кодировки и схемы упорядочения
- 307 Полнотекстовый поиск
- 317 Ограничения внешнего ключа
- 318 Объединенные таблицы и секционирование
- 329 Распределенные (XA) транзакции
- 332 6. Оптимизация параметров сервера
- 333 Основы конфигурирования
- 339 Общие принципы настройки
- 351 Настройка ввода/вывода в MySQL
- 368 Настройка конкурентного доступа в MySQL
- 372 Настройка с учетом рабочей нагрузки
- 379 Настройка параметров уровня соединения
- 381 7. Оптимизация операционной системы и оборудования
- 382 Что ограничивает производительность MySQL?
- 382 Как выбирать процессор для MySQL
- 386 Поиск баланса между памятью и дисками
- 396 Выбор оборудования для подчиненного сервера
- 396 Оптимизация производительности с помощью RAID
- 406 Сети хранения данных и сетевые системы хранения данных
- 408 Использование нескольких дисковых томов
- 410 Конфигурация сети
- 413 Выбор операционной системы
- 414 Выбор файловой системы
- 417 Многопоточность
- 418 Свопинг
- 420 Состояние операционной системы
- 427 8. Репликация
- 427 Обзор репликации
- 432 Настройка репликации
- 441 Взгляд на репликацию изнутри
- 449 Топологии репликации
- 466 Репликация и планирование пропускной способности
- 469 Администрирование и обслуживание репликации
- 480 Проблемы репликации и их решение
- 501 Насколько быстро работает репликация?
- 504 Перспективы репликации в MySQL
- 506 9. Масштабирование и высокая доступность
- 507 Терминология
- 509 Масштабирование MySQL
- 539 Балансирование нагрузки
- 552 Высокая доступность
- 564 10. Оптимизация на уровне приложения
- 564 Общие сведения о производительности приложений
- 568 Проблемы веб-сервера
- 572 Кэширование
- 579 Расширение MySQL
- 581 Альтернативы MySQL
- 582 11. Резервное копирование и восстановление
- 583 Обзор
- 589 Различные факты и компромиссы
- 600 Резервное копирование двоичных журналов
- 603 Резервное копирование данных
- 616 Восстановление из резервной копии
- 628 Скорость резервного копирования и восстановления
- 629 Инструменты резервного копирования
- 638 Сценарии резервного копирования
- 642 12. Безопасность
- 642 Терминология
- 643 Основы учетных записей
- 665 Безопасность на уровне операционной системы
- 666 Безопасность на уровне сети
- 675 Шифрование данных
- 680 MySQL в окружении с измененным корневым каталогом
- 682 13. Состояние сервера MySQL
- 682 Системные переменные
- 683 Команда SHOW STATUS
- 691 Команда SHOW INNODB STATUS
- 707 Команда SHOW PROCESSLIST
- 708 Команда SHOW MUTEX STATUS
- 709 Состояние репликации
- 710 База данных INFORMATION_SCHEMA
- 712 14. Инструменты для оптимизации производительности
- 712 Средства организации интерфейса
- 715 Инструменты мониторинга
- 727 Инструменты анализа
- 730 Утилиты MySQL
- 733 Источники дополнительной информации
- 734 A. Передача больших файлов
- 739 B. Команда EXPLAIN
- 756 C. Использование Sphinx совместно с MySQL
- 788 D. Отладка блокировок
- 799 Алфавитный указатель
Инструкция как скачать книгу Бэрон Шварц, Петр Зайцев, Вадим Ткаченко, Джереми Д. Заводны, Арьен Ленц, Дерек Дж. Бэллинг: MySQL. Оптимизация производительности в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.