Banco de Dados x Instância
O Oracle é um RDBMS (sistema de gerenciamento de banco de dados objeto-relacional) amplamente utilizado nas empresas. É desenvolvido pela Oracle Corporation. Um sistema Oracle é composto de pelo menos uma instância e um banco de dados. Instância é uma coleção de processos que se comunicam com o armazenamento de dados. Banco de dados é o armazenamento real, que mantém a coleção de arquivos. No entanto, o termo banco de dados Oracle é usado para se referir a todo o sistema de banco de dados Oracle (instâncias e bancos de dados). Por isso, sempre há alguma confusão para os iniciantes entre os termos banco de dados e instância.
O que é Instância?
Instância é uma coleção de processos em execução no sistema operacional e na memória relacionada que interage com o armazenamento de dados. A instância é a interface entre o usuário e o banco de dados. Os processos capazes de se comunicar com o cliente e acessar o banco de dados são fornecidos pela instância. Esses processos são processos em segundo plano e não são suficientes para manter o princípio ACID (Atomicidade, Consistência, Isolamento e Durabilidade) no banco de dados. Portanto, uma instância também usa poucos outros componentes, como cache de memória e buffers. Mais especificamente, uma instância é composta de três partes. Eles são SGA (Área Global do Sistema), PGA (Área Global do Programa) e processos em segundo plano. SGA é uma estrutura de memória compartilhada temporária, que tem uma vida útil da inicialização da instância até seu desligamento.
Base de dados
O banco de dados Oracle refere-se ao armazenamento real do Oracle RDBMS. É composto por três componentes principais. Eles são arquivos de controle, refazer e dados. Opcionalmente, pode haver arquivos de senha no banco de dados. Os arquivos de controle controlam todos os arquivos de dados e refazem. Ele também ajuda a manter intacta a integridade do banco de dados, acompanhando o SCN (System Change Number), registros de data e hora e outras informações críticas, como informações de backup / recuperação. Os arquivos de dados mantêm os dados reais. No momento da criação do banco de dados, pelo menos dois arquivos de dados são criados. Esses arquivos são vistos fisicamente pelo DBA (Database Administrator). Operações de arquivo como renomear, redimensionar, adicionar, mover ou soltar podem ser realizadas em arquivos de dados. Os arquivos de redo log (também conhecidos como redo logs on-line) mantêm as informações relacionadas às alterações no banco de dados com as informações cronológicas. Essas informações são necessárias caso o usuário precise refazer todas ou algumas das modificações no banco de dados. Para que uma instância manipule os dados do banco de dados, abra-os primeiro. Uma instância pode abrir apenas um banco de dados. No entanto, um banco de dados pode ser aberto por várias instâncias.
Qual é a diferença entre banco de dados e instância?
Os termos instância e banco de dados no Oracle RDBMS são altamente relacionados, mas se referem aos dois componentes diferentes dentro do sistema. O banco de dados refere-se ao armazenamento real do RDBMS, enquanto Instance é uma coleção de processos em execução no sistema operacional e na memória relacionada que interage com o armazenamento de dados. A instância precisa abrir o banco de dados antes de manipular os dados. Várias instâncias podem abrir um único banco de dados, mas uma instância não pode abrir vários bancos de dados.