оглавление
Об авторе..........................................................9
О технических рецензентах ................................ 11
Благодарности................................................. 12
Введение ........................................................ 14
Глава 1. Начало... ............................................. 17
Oracle в процессах................................................................... 18
Oracle в действии .................................................................... 21
В заключение .......................................................................... 22
Глава 2. Повтор и отмена ................................... 24
Изменение простых данных..................................................... 24
Подход ...........................................................................................25
Пример...........................................................................................26
Коротко о главном ..........................................................................30
Подведение итогов.........................................................................32
ACID ........................................................................................ 32
Простота механизма повторения............................................. 35
Сложность механизма отмены................................................. 44
Согласованное чтение ....................................................................45
Откат ..............................................................................................46
В заключение .......................................................................... 48
Глава 3. Транзакции и согласованность ................ 50
Разрешение конфликтов ......................................................... 51
Транзакции и механизм отмены............................................... 52
Начало и конец транзакции.............................................................54
Таблица транзакций........................................................................55
Обзор блока отмены.......................................................................58
Блоки данных и механизм отмены ........................................... 62
Подготовка полигона......................................................................62
Список заинтересованных транзакций ...........................................64
Параллельные операции ................................................................67
Поддержка согласованности ................................................... 69
6 Оглавление
Номер SCN подтверждения ..................................................... 75
Фиксирующая очистка....................................................................76
Отложенная очистка блока..............................................................79
Откат таблицы транзакций..............................................................84
Большие объекты .................................................................... 92
В заключение .......................................................................... 93
Глава 4. Блокировки и защелки ........................... 95
В первую очередь.................................................................... 96
Массивы.........................................................................................96
Указатели .......................................................................................97
Связанные списки ..........................................................................97
Хэш-таблицы................................................................................100
Защелки................................................................................ 105
Логика работы защелок ................................................................106
Статистики по операциям с защелками ........................................110
Защелки и масштабируемость .....................................................117
Блокировки ........................................................................... 120
Инфраструктура ...........................................................................120
Представление v$lock...................................................................122
Взаимоблокировка .......................................................................127
Режимы блокировок .....................................................................133
Защелки для блокировок ..............................................................134
Блокировки KGL (и закрепления)..................................................137
Блокировки и закрепления ...........................................................138
В заключение ........................................................................ 141
Глава 5. Кэши и копии...................................... 143
Управление памятью ............................................................. 144
Гранулы ........................................................................................144
Гранулы и буферы ........................................................................146
Несколько кэшей данных ....................................................... 148
Гранулы и пулы буферов...............................................................151
Пулы буферов...............................................................................152
Рабочие наборы данных ........................................................ 155
Алгоритм LRU/TCH ................................................................ 156
Алгоритм LRU/TCH в действии......................................................158
Переустановка ссылок в буфере...................................................159
REPL_AUX .............................................................................. 161
Поиск данных ........................................................................ 164
Закрепленные буферы .................................................................168
Логический ввод/вывод................................................................171
Изменение ...................................................................................172
Загрузка хэш-цепочки ..................................................................173
Согласованные копии ...................................................................174
Физический ввод/вывод...............................................................175
Оглавление 7
Сканирование таблиц...................................................................176
В заключение ........................................................................ 178
Глава 6. Запись и восстановление ..................... 181
Цели...................................................................................... 181
Запись в журнал .................................................................... 183
Цикл записи в журнал ...................................................................186
Оптимизация PL/SQL....................................................................189
Аномалия ACID .............................................................................193
Расширенные механизмы подтверждения....................................194
Механика......................................................................................196
Непроизводительные потери памяти в буфере.............................200
Приватные буферы журнала .........................................................203
Запись данных....................................................................... 204
Заголовки буферов.......................................................................206
Очереди контрольных точек..........................................................206
Инкрементальные контрольные точки...........................................209
Взаимодействия процесса записи данных............................. 211
Взаимодействие dbwr и lgwr.........................................................211
Процесс записи данных и списки LRU...........................................213
Контрольные точки и очереди.......................................................217
Очереди заголовков буферов .......................................................223
Контрольные точки и файлы журнала............................................224
Восстановление .................................................................... 227
Восстановление носителя ............................................................229
Резервные базы данных ...............................................................230
Ретроспективные базы данных .....................................................231
Побочные эффекты ......................................................................233
В заключение ........................................................................ 234
Глава 7. Парсинг и оптимизация........................ 237
Понимание SQL ..................................................................... 237
Парсинг ........................................................................................238
Оптимизация................................................................................238
Интерпретация результатов tkprof................................................240
Кэш словаря.......................................................................... 243
Структура .....................................................................................248
Функционирование кэша словаря.................................................251
Вызов парсера – что это? ...................................................... 255
Кэш курсора .................................................................................257
Удержание курсоров.....................................................................260
Библиотечный кэш ................................................................ 262
Организация разделяемого пула..................................................265
Детали организации разделяемого пула ......................................270
… и его работы! ............................................................................277
Парсинг и оптимизация ......................................................... 280
8 Оглавление
Выполнение, блокировка и закрепление.......................................284
Мьютексы.....................................................................................286
В заключение ........................................................................ 287
Глава 8. RAC и крах ......................................... 290
Общая картина ...................................................................... 291
Бесперебойная работа .................................................................294
Для чего это надо? ................................................................ 296
Отказоустойчивость .....................................................................297
Масштабируемость ......................................................................298
Oracle Grid ....................................................................................299
Как это работает?.................................................................. 301
GRD..............................................................................................302
Ведущие и теневые ресурсы.........................................................305
GCS и GES ....................................................................................309
Cache Fusion.................................................................................312
Следствия ....................................................................................315
Восстановление .................................................................... 319
Последовательности ............................................................. 321
Кэширование последовательностей.............................................322
Внутреннее устройство последовательности ...............................323
Упорядоченные последовательности............................................325
Последовательности и индексы....................................................328
В заключение ........................................................................ 331
Приложение. Вывод и отладка .......................... 334
oradebug................................................................................ 334
Приостановка процессов..............................................................334
Вывод дампов ..............................................................................335
Вывод содержимого памяти .........................................................340
Вывод дампа из инструкций SQL ........................................... 343
Альтернативы oradebug ................................................................344
Блоки файлов данных ...................................................................345
Файлы журнала ............................................................................346
Рекомендации....................................................................... 350
Словарь терминов .......................................... 351
Предметный указатель.................................... 366