Oracle数据库实例深度剖析(oracle数据库和实例)

Oracle数据库实例深度剖析

Oracle 数据库实例(Oracle Instance)是由一组底层的进程以及对应的共享内存组成的管理程序,负责管理Oracle数据库的结构和控制信息。下面我们就来深入探讨一下Oracle数据库实例的相关知识。

Oracle 数据库实例是提供访问数据库中表、索引、视图等物理结构的唯一路径。实例启动后,将允许用户和服务程序访问数据库,用语言SQL进行数据操作并执行管理功能。

Oracle 数据库实例由一组进程和相关的内存组件构成,每个进程都负责管理其负责的一个或多个资源。下面是一份官方实例进程及其功能的基本清单:

– System Monitor(SMON):系统监视

– Process Monitor(PMON):进程监视

– Database Writer(DBWR):数据库写入

– Log Writer(LGWR):日志写入

– Checkpoint(CKPT):检查点

– Archive Logs(ARCn):归档日志

– PMON:负责当进程终止时,清理改进程所用到的相关数据库资源

– Recoverer(RECO):负责数据库恢复工作

– Dispatcher(Dnnn):负责新连接请求,管理着并发用户连接

– Vault(Sud):负责监控数据库所有任务

在Oracle数据库启动的过程中,将会创建一个内存空间,用于存储空间管理信息等,这个内存空间被称作共享内存段(Shared Memory Segment)。

Oracle 数据库实例不能使用共享内存段,而是采用一个共享的内存锁(Shared Memory Lock),用于保护所有外部进程对共享内存段的访问。此外,数据库实例还提供一些自动任务,如自动启动实例、记录日志信息等。

通过以上简要介绍,大家可以掌握到如何正确构建Oracle数据库实例,以及它的组件以及功能。下面来举个栗子运行SQL语句来启动Oracle数据库实例。

SQL> startup

ORACLE instance started.

Total System Global Area 2.3000M bytes

Fixed Size 216328 bytes

Variable Size 125815424 bytes

Database Buffers 2.0000M bytes

Redo Buffers 1046528 bytes

Database mounted.

Database opened.

由以上SQL执行,可以清楚的看到,Oracle 数据库实例启动成功,总共使用内存2.3000M bytes。上述操作是开启Oracle数据库实例,当实例开启后,即可进行数据库实例相关的操作。


数据运维技术 » Oracle数据库实例深度剖析(oracle数据库和实例)