База данных против экземпляра
Oracle - это СУБД (объектно-реляционная система управления базами данных), широко используемая на предприятиях. Он разработан корпорацией Oracle. Система Oracle состоит как минимум из одного экземпляра и базы данных. Экземпляр - это набор процессов, которые взаимодействуют с хранилищем данных. База данных - это фактическое хранилище, в котором хранится коллекция файлов. Однако термин база данных Oracle используется для обозначения всей системы баз данных Oracle (экземпляры и базы данных). Из-за этого у начинающих всегда есть путаница между термином база данных и экземпляр.
Что такое экземпляр?
Экземпляр - это совокупность процессов, работающих поверх операционной системы и связанной с ней памяти, которая взаимодействует с хранилищем данных. Экземпляр - это интерфейс между пользователем и базой данных. Процессы, способные связываться с клиентом и получать доступ к базе данных, предоставляются экземпляром. Эти процессы являются фоновыми, и их недостаточно для поддержания принципа ACID (атомарность, согласованность, изоляция и долговечность) в базе данных. Таким образом, экземпляр также использует несколько других компонентов, таких как кэш-память и буферы. В частности, Экземпляр состоит из трех частей. Это SGA (System Global Area), PGA (Program Global Area) и фоновые процессы. SGA - это временная структура разделяемой памяти, которая имеет жизненный цикл запуска экземпляра до его выключения.
База данных
База данных Oracle относится к фактическому хранилищу СУБД Oracle. Он состоит из трех основных компонентов. Это управляющие файлы, файлы повторов и файлы данных. При желании в базе данных могут быть файлы паролей. Управляющие файлы отслеживают все файлы данных и повторные файлы. Это также помогает сохранить целостность базы данных, отслеживая номер изменения системы (SCN), временные метки и другую важную информацию, такую как информация о резервном копировании / восстановлении. Файлы данных хранят фактические данные. На момент создания базы данных создаются как минимум два файла данных. Эти файлы физически видны администратором баз данных. Файловые операции, такие как переименование, изменение размера, добавление, перемещение или удаление могут быть выполнены с файлами данных. Файлы журнала повторов (также известные как онлайн-журналы повторов) хранят информацию об изменениях в базе данных с хронологической информацией. Эта информация необходима в случае, если пользователю необходимо повторить все или некоторые изменения в базе данных. Чтобы экземпляр мог манипулировать данными базы данных, он должен сначала открыть ее. Экземпляр может открыть только одну базу данных. Тем не менее, база данных может быть открыта несколькими экземплярами.
В чем разница между базой данных и экземпляром?
Термины экземпляр и база данных в СУБД Oracle тесно связаны между собой, но они относятся к двум различным компонентам системы. База данных относится к фактическому хранилищу СУБД, в то время как Instance представляет собой набор процессов, работающих поверх операционной системы и связанной памяти, которая взаимодействует с хранилищем данных. Экземпляр должен открыть базу данных, прежде чем манипулировать данными. Несколько экземпляров могут открыть одну базу данных, но экземпляр не может открыть несколько баз данных.