Кроме понятия разделяемой памяти в определение экземпляра входят процессы, о которых мы сейчас и поговорим. В экземпляре Oracle есть три класса процессов (или потоков, здесь и далее, если речь идет об ОС Windows):
- Серверные процессы. Они выполняют запросы клиентов, а именно – составляют план выполнения SQL-запроса, находят необходимые данные и реализуют его.
- Фоновые процессы. Это процессы, которые начинают выполняться при запуске экземпляра и решают различные задачи поддержки базы данных. Они выполняют разнообразные задачи, обеспечивающие работу СУБД Oracle, такие как: поддержка буферного кэша, копия заполненного файла оперативного журнала повторного выполнения в архив, очистка всех структур, используемых завершившимися процессами, и т.д. Все эти процессы работают в координации друг с другом.
- Подчиненные процессы. Подчиненные процессы ввода-вывода используются для эмуляции асинхронного ввода-вывода в системах или на устройствах, которые его не поддерживают.