Обеспечение высокой доступности систем на основе MySQL
Чарльз Белл, Мэтс Киндал, Ларс Талманн
Данная книга — подробное руководство по обеспечению высокой доступности ИТ-систем, построенных с использованием СУБД MySQL.
Здесь рассматриваются методические приемы и функции, раскрываются общие подходы и тонкости, связанные с репликацией и мониторингом серверов баз данных.
Авторы — лидеры команды разработчиков MySQL и признанные эксперты в области теории и практики применения СУБД — приводят множество реальных примеров, сопровождая их подробным анализом. «Изюминкой» книги является рассказ о недо- кументированных и неочевидных функциях, позволяющих повысить отказоустойчи- вость MySQL в любой среде — в среде «обычных», виртуальных и кластерных серве- ров, а также в облачных вычислениях.
Издание состоит из пятнадцати глав и предметного указателя. Рекомендуется си- стемным администраторам, администраторам БД и всем интересующимся практиче- скими аспектами повышения надежности ИТ-систем.
Издательство: БХВ-Петербург, Русская Редакция, 2011 г.
ISBN 978-5-7502-0409-0, 978-5-9775-0799-8, 978-0-596-80730-6
Количество страниц: 624.
Содержание книги «Обеспечение высокой доступности систем на основе MySQL»:
- XII Предисловие
- XIV Введение
- XVIII Благодарности
- 1 ЧАСТЬ I Репликация
- 3 Глава 1 Введение
- 5 Что такое репликация?
- 6 А можно ли обойтись без резервного копирования?
- 7 Для чего нужен мониторинг?
- 7 Дополнительные источники
- 8 Заключение
- 9 Глава 2 Основы репликации MySQL
- 10 Репликация – первые шаги
- 11 Конфигурирование главного сервера
- 13 Конфигурирование подчиненного сервера
- 13 Подключение главного и подчиненного серверов
- 15 Кое-что о двоичном журнале
- 15 Что записано в двоичном журнале
- 16 Работа репликации
- 18 Структура и содержимое двоичного журнала
- 21 Управление репликацией средствами Python
- 23 Основные классы и функции
- 24 Операционная система
- 24 Класс сервера
- 26 Роли сервера
- 28 Создание новых подчиненных серверов
- 29 Копирование главного сервера
- 31 Копирование подчиненного сервера
- 33 Сценарии операции копирования
- 35 Распространенные задачи репликации и их решение
- 35 Создание отчетов
- 43 Заключение
- 10 Репликация – первые шаги
- 44 Глава 3 Двоичный журнал событий
- 45 Структура двоичного журнала
- 47 Структура события двоичного журнала
- 49 Регистрация операторов в журнале
- 49 Регистрация операторов языка манипулирования данными
- 50 Регистрация операторов языка описания данных
- 50 Регистрация запросов
- 56 Операторы LOAD DATA INFILE
- 58 Фильтры двоичного журнала
- 60 Триггеры, события и хранимые программы
- 65 Хранимые процедуры
- 68 Хранимые функции
- 70 События
- 71 Специальные структуры
- 72 Модификации без транзакций и обработка ошибок
- 75 Регистрация транзакций
- 76 Кэш транзакций
- 78 Распределенная обработка транзакций с использованием XA
- 80 Управление двоичным журналом
- 81 Отказоустойчивость двоичного журнала
- 82 Ротация файлов двоичного журнала
- 84 Инциденты
- 85 Очистка файла двоичного журнала
- 86 Утилита mysqlbinlog
- 86 Примеры использования mysqlbinlog
- 92 Интерпретация событий
- 96 Параметры и переменные двоичного журнала
- 98 Заключение
- 45 Структура двоичного журнала
- 99 Глава 4 Роль репликации в обеспечении высокой доступности
- 100 Избыточность
- 102 Планирование
- 102 Отказ подчиненного сервера
- 102 Отказ главного сервера
- 103 Отказ сервера ретрансляции
- 103 Аварийное восстановление
- 103 Процедуры
- 106 Горячий резерв
- 111 Два главных сервера
- 120 Полусинхронная репликация
- 123 Повышение подчиненного сервера
- 139 Круговая репликация
- 143 Заключение
- 144 Глава 5 Роль репликации MySQL в горизонтальном масштабировании
- 146 Горизонтальное масштабирование операций чтения, а не записи
- 147 Смысл асинхронной репликации
- 150 Управление топологией репликации
- 153 Пример балансировщика нагрузки уровня приложения
- 157 Иерархическая репликация
- 158 Настройка сервера-ретранслятора
- 160 Добавление ретранслятора программой на языке Python
- 161 Специализированные подчиненные серверы
- 162 Фильтрация событий репликации
- 164 Применение фильтрации для секционирования событий подчиненных серверов
- 165 Шардинг
- 168 Представление шарда
- 169 Секционирование данных
- 171 Балансировка шардов
- 173 Пример шардинга
- 186 Управление согласованностью данных
- 187 Согласованность данных в неиерархическом развертывании
- 189 Согласованность данных в иерархическом развертывании
- 196 Заключение
- 197 Глава 6 Дополнительные возможности репликации
- 197 Основы архитектуры репликации
- 198 Структура журнала ретрансляции
- 202 Потоки репликации
- 203 Запуск и остановка потоков подчиненного сервера
- 204 Репликация через Интернет
- 206 Настройка защищенной репликации с использованием встроенной поддержки SSL
- 207 Настройка защищенной репликации при помощи Stunnel
- 209 Тонкая настройка репликации
- 209 Информация о состоянии репликации
- 217 Параметры для обработки разорванных подключений
- 218 Как подчиненный сервер обрабатывает события
- 219 Роль потока ввода-вывода
- 219 Работа потока SQL
- 226 Обеспечение надежности и восстановление подчиненного сервера
- 226 Синхронизация, транзакции и проблемы при сбоях баз данных
- 228 Правила для защиты нетранзакционных операторов
- 229 Многоисточниковая репликация
- 232 Построчная репликация
- 234 Настройка построчной репликации
- 235 Смешанный режим репликации
- 236 События построчной репликации
- 241 Обработка событий
- 242 События и триггеры
- 244 Фильтрация
- 246 Заключение
- 197 Основы архитектуры репликации
- 247 ЧАСТЬ II Мониторинг и восстановление после сбоев
- 249 Глава 7 Основы мониторинга
- 250 Способы мониторинга
- 251 Что дает мониторинг
- 251 Компоненты системы, подлежащие мониторингу
- 252 Процессор
- 253 Оперативная память
- 254 Диск
- 255 Сетевая подсистема
- 256 Решения для мониторинга
- 257 Мониторинг в системах Linux и Unix
- 258 Активность процессов
- 262 Использование памяти
- 264 Использование диска
- 268 Сетевая активность
- 269 Общая информация о системе
- 270 Автоматизация мониторинга при помощи планировщика cron
- 271 Мониторинг Mac OS X
- 271 Системный профайлер
- 273 Приложение Console
- 271 Системный профайлер
- 275 Монитор активности
- 278 Мониторинг Microsoft Windows
- 279 Индекс производительности Windows
- 280 Отчет о работоспособности системы
- 283 Просмотр событий
- 285 Монитор стабильности системы
- 286 Диспетчер задач
- 287 Системный монитор
- 289 Мониторинг как профилактическое средство
- 290 Заключение
- 291 Глава 8 Мониторинг MySQL
- 292 Что такое производительность?
- 292 Мониторинг сервера MySQL
- 293 Управление производительностью в MySQL
- 293 Мониторинг производительности
- 294 Команды SQL
- 300 Утилита mysqladmin
- 302 Утилиты MySQL GUI
- 302 MySQL Administrator
- 312 MySQL Query Browser
- 313 Журналы сервера
- 316 Сторонние утилиты
- 318 Пакет MySQL Benchmark Suite
- 320 Производительность базы данных
- 320 Оценка производительности базы данных
- 331 Рекомендации по оптимизации баз данных
- 341 Рекомендации по повышению производительности
- 341 Все работает медленно
- 341 Медленные запросы
- 342 Медленная работа приложений
- 342 Медленная репликация
- 343 Заключение
- 344 Глава 9 Мониторинг механизмов БД
- 345 MyISAM
- 345 Оптимизация дискового файла БД
- 345 Настройка таблиц
- 346 Использование утилит MyISAM
- 348 Хранение таблицы в порядке индексации
- 348 Сжатие таблиц
- 349 Дефрагментация таблиц
- 349 Мониторинг кэша ключей
- 350 Предварительная загрузка в кэш
- 351 Использование нескольких кэшей ключей
- 352 Другие параметры
- 353 InnoDB
- 355 Использование команды SHOW ENGINE
- 358 Использование мониторов InnoDB
- 361 Мониторинг файлов журналов
- 362 Мониторинг пула буферов
- 364 Мониторинг табличных пространств
- 365 Использование таблиц INFORMATION_SCHEMA
- 366 Другие параметры
- 367 Заключение
- 345 MyISAM
- 368 Глава 10 Мониторинг репликации
- 368 Приступаем к работе
- 369 Настройка сервера
- 369 Фильтрация данных для репликации
- 371 Потоки репликации
- 373 Мониторинг главного сервера
- 373 Команды для мониторинга главного сервера
- 377 Переменные состояния на главном сервере
- 377 Мониторинг подчиненных серверов
- 377 Команды для мониторинга подчиненных серверов
- 381 Переменные состояния на подчиненном сервере
- 382 Мониторинг репликации при помощи MySQL Administrator
- 384 Прочие элементы
- 384 Вопросы, связанные с сетями
- 384 Задержки подчиненного сервера
- 385 Причины задержки подчиненных серверов и способы их устранения
- 387 Заключение
- 368 Приступаем к работе
- 388 Глава 11 Устранение неполадок репликации
- 389 Возможные причины проблем
- 389 Проблемы на главном сервере
- 394 Проблемы на подчиненном сервере
- 400 Более сложные проблемы репликации
- 402 Средства решения проблем репликации
- 403 Рекомендации
- 403 Изучите топологию
- 406 Проверяйте состояние всех серверов
- 406 Проверяйте журналы
- 407 Проверяйте конфигурацию
- 407 Выполняйте безопасную остановку
- 407 После сбоя выполняйте перезапуск должным образом
- 408 Выполняйте неудачные запросы вручную
- 408 Общие процедуры
- 410 Отчеты об ошибках репликации
- 410 Заключение
- 389 Возможные причины проблем
- 412 Глава 12 Защита инвестиций
- 413 Что такое защита информации?
- 413 Три составляющих защиты информации
- 414 Почему важна защита информации
- 414 Обеспечение целостности, восстановление информации и роль резервного копирования
- 415 Высокая доступность или аварийное восстановление?
- 416 Аварийное восстановление
- 422 Важность восстановления данных
- 423 Резервное копирование и восстановление
- 428 Утилиты резервного копирования и решения на уровне ОС
- 428 Приложение InnoDB Hot Backup
- 432 Физическое копирование файлов
- 434 Утилита mysqldump
- 437 XtraBackup
- 437 Мгновенные снимки LVM
- 442 Сравнение способов резервного копирования
- 443 Резервное копирование и репликация MySQL
- 443 Резервное копирование и восстановление с использованием репликации
- 444 PITR
- 452 Автоматизация резервного копирования
- 454 Заключение
- 413 Что такое защита информации?
- 456 Глава 13 MySQL Enterprise
- 457 Начинаем работу с MySQL Enterprise
- 458 Варианты подписки
- 459 Обзор установки
- 460 Компоненты MySQL Enterprise
- 460 Сервер MySQL Enterprise
- 460 MEM
- 464 Поддержка MySQL
- 464 Использование MySQL Enterprise
- 465 Установка
- 467 Решение проблем с агентом мониторинга
- 468 Мониторинг
- 474 Анализатор запросов
- 476 Дальнейшая информация
- 477 Заключение
- 457 Начинаем работу с MySQL Enterprise
- 479 ЧАСТЬ III Среды с высокой доступностью
- 481 Глава 14 Облачные вычисления
- 482 Что такое облачные вычисления?
- 484 Архитектуры облачных вычислений
- 488 Экономичны ли облачные вычисления?
- 489 Применение облачных вычислений
- 489 Преимущества облачных вычислений
- 490 Поставщики облачных вычислений
- 491 AWS
- 492 Обзор технологий
- 497 Как это работает
- 498 Утилиты облака Amazon
- 501 Приступаем к работе
- 515 Работа с диском
- 520 Что дальше?
- 520 MySQL в облаке
- 520 Репликация MySQL и EC2
- 524 Рекомендации по использованию MySQL в EC2
- 526 Открытое ПО для облачных вычислений
- 527 Заключение
- 482 Что такое облачные вычисления?
- 529 Глава 15 MySQL Cluster
- 530 Что такое MySQL Cluster?
- 530 Терминология и компоненты
- 531 Отличия MySQL Cluster от MySQL
- 531 Типичная конфигурация
- 532 Возможности MySQL Cluster
- 534 Локальная и глобальная избыточность
- 534 Обработка журналов
- 535 Избыточность и распределенные данные
- 536 Архитектура MySQL Cluster
- 537 Как хранятся данные
- 540 Секционирование данных
- 541 Управление транзакциями
- 542 Онлайн-обслуживание
- 543 Пример конфигурации
- 543 Начало работы
- 545 Запуск MySQL Cluster
- 550 Тестирование кластера
- 550 Отключение кластера
- 551 Обеспечение высокой доступности
- 554 Восстановление системы
- 555 Восстановление узлов
- 556 Репликация
- 561 Обеспечение высокой производительности
- 561 Повышение производительности
- 562 Рекомендации по обеспечению высокой производительности
- 565 Заключение
- 530 Что такое MySQL Cluster?
- 567 Приложение Репликация: секреты и советы
- 580 Предметный указатель
- 606 Об авторах
Инструкция как скачать книгу Чарльз Белл, Мэтс Киндал, Ларс Талманн: Обеспечение высокой доступности систем на основе MySQL в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.