百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

Oracle体系结构之服务器结构(一)--Oracle 服务器的构成

sinye56 2024-10-09 19:50 3 浏览 0 评论

【关键术语】

Architecture 结构 Component 组成部件 Process 进程 Parameter 参数Instance 实例 Memory 内存 Database buffer cache 数据库高速缓存 Shared pool 共享池 Library cache 库缓存 Data dictionary cache 数据字典缓存Redo log buffer 重做日志缓存 Large pool 大池 Java pool java 池 Background process 后台进程 Connection 连接 Session 会话 Online redo log 联机重做日志 Dynamic 动态的 Parsing 分析 SGA(System Global Area) 系统全局区 PGA(Program Global Area)程序全局区 Server process 服务器进程 User process 用户进程

【综述】

Oracle 服务器是一个具有高性能和高可靠性面向对象关系型数据库管理系统,也是一个高效的 SQL 语句执行环境。Oracle 服务器具备以下的特点:

● 能够可靠的进行多用户环境下大量数据的处理,允许多用户同时访问相同的数据。

● 保证数据访问的高性能。

● 有效防止对数据的非法访问。

● 对于故障恢复提供高效的解决方案。

(一)、Oracle 服务器的总体结构

Oracle 服务器同运行在操作系统下的很多程序一样,通过在后台运行一组可执行程序、在内存中开辟程序运行的存储区域并在磁盘上存储数据来进行运作。

如图 1-1 所示,在结构上,Oracle 服务器(Oracle Server)由实例(Instance)和数据库(Database)两大部分构成。实例是一组内存结构和 Oracle 后台进程的集合;数据库在物理上由多个操作系统文件组成, 其中主要包括数据文件、控制文件和重做日志文件。

Oracle 服务器=实例+数据库。

(二)、Oracle 实例

如图 1-12所示,Oracle 实例由内存结构(SGA)和 Oracle 后台进程组成的。

当用户启动(start)实例时,Oracle 将自动地为 SGA 分配内存并启动后台进程,实例运行后,用户可以访问实例,由实例来访问数据库。实例相当于用户和数据库的中间层。

当用户关闭(shut down)实例时,由操作系统负责回收内存。每个实例都有自己的SGA,并且,每个实例同时只能访问一个数据库。

Oracle 数据库实例(Instance) = 内存结构(SGA)+ 后台进程(BackgroundProcess)

内存结构描述的是 Oracle 数据库对内存的使用构成。

Oracle 内存结构被总称为 SGA(System Global Area),主要包括数据库高速缓冲区(Database Buffer Cache)、重做日志缓冲区(Redo Log Buffer)和共享池(Shared Pool)三个部分。

Oracle 后台进程主要包括 DBWn、CKPT、LGWR、SMON、PMON、ARCn 和 RECO。

(三)、Oracle 数据库

如图 1-3 所示,Oracle 数据库包含了用于存放数据的数据文件(DataFiles),用于保护数据不丢失的联机重做日志文件(Online Redolog Files)和用于连接 Oracle 实例和数据库所需要的控制文件(Control Files)。

Oracle 数据库 = 数据文件 + 控制文件 + 联机重做日志文件

除了以上三种文件之外,Oracle 还包含了参数文件(Parameter File)、口令文件(Password File)、归档日志文件(Archived log Files)、以及跟踪文件(Trace File)和警告文件(Alert Log File)等非数据库文件。

控制文件:记录了数据库的各项信息,是连接 Oracle 实例和 Oracle 数据库的桥梁。每个 Oracle 数据库包含 1-8 个控制文件。

联机重做日志文件:记录了用户对数据的各项操作,用于保护数据不丢失。以日志组的形式存在。每个 Oracle 数据库至少包含两个日志组。

数据文件:用于存放数据。参数文件:记录了 Oracle 实例的各项信息。分为动态和静态初始化参数文件。

口令文件:存放特定用户的口令。

归档日志文件:相当于联机重做日志文件的备份,用于保护数据不丢失。

追踪文件:存放后台进程和服务器进程的跟踪信息。

警告文件:警告文件由连续的消息和错误组成。可以查看到 Oracle 内部错误、块损坏错误以及非默认的初始化参数值等。


写在最后话:

感谢各位的支持与阅读,后续会继续推送相关知识和交流,欢迎交流和关注,感谢!

相关推荐

Linux基础知识之修改root用户密码

现象:Linux修改密码出现:Authenticationtokenmanipulationerror。故障解决办法:进入单用户,执行pwconv,再执行passwdroot。...

Linux如何修改远程访问端口

对于Linux服务器而言,其默认的远程访问端口为22。但是,出于安全方面的考虑,一般都会修改该端口。下面我来简答介绍一下如何修改Linux服务器默认的远程访问端口。对于默认端口而言,其相关的配置位于/...

如何批量更改文件的权限

如果你发觉一个目录结构下的大量文件权限(读、写、可执行)很乱时,可以执行以下两个命令批量修正:批量修改文件夹的权限chmod755-Rdir_name批量修改文件的权限finddir_nam...

CentOS「linux」学习笔记10:修改文件和目录权限

?linux基础操作:主要介绍了修改文件和目录的权限及chown和chgrp高级用法6.chmod修改权限1:字母方式[修改文件或目录的权限]u代表所属者,g代表所属组,o代表其他组的用户,a代表所有...

Linux下更改串口的权限

问题描述我在Ubuntu中使用ArduinoIDE,并且遇到串口问题。它过去一直有效,但由于可能不必要的原因,我觉得有必要将一些文件的所有权从root所有权更改为我的用户所有权。...

Linux chown命令:修改文件和目录的所有者和所属组

chown命令,可以认为是"changeowner"的缩写,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件(或目录)的所属组。当只需要修改所有者时,可使用...

chmod修改文件夹及子目录权限的方法

chmod修改文件夹及子目录权限的方法打开终端进入你需要修改的目录然后执行下面这条命令chmod777*-R全部子目录及文件权限改为777查看linux文件的权限:ls-l文件名称查看li...

Android 修改隐藏设置项权限

在Android系统中,修改某些隐藏设置项或权限通常涉及到系统级别的操作,尤其是针对非标准的、未在常规用户界面显示的高级选项。这些隐藏设置往往与隐私保护、安全相关的特殊功能有关,或者涉及开发者选项、权...

完蛋了!我不小心把Linux所有的文件权限修改了!在线等修复!

最近一个客户在群里说他一不小心把某台业务服务器的根目录权限给改了,本来想修改当前目录,结果执行成了根目录。...

linux改变安全性设置-改变所属关系

CentOS7.3学习笔记总结(五十八)-改变安全性设置-改变所属关系在以前的文章里,我介绍过linux文件权限,感兴趣的朋友可以关注我,阅读一下这篇文章。这里我们不在做过的介绍,注重介绍改变文件或者...

Python基础到实战一飞冲天(一)--linux基础(七)修改权限chmod

#07_Python基础到实战一飞冲天(一)--linux基础(七)--修改权限chmod-root-groupadd-groupdel-chgrp-username-passwd...

linux更改用户权限为root权限方法大全

背景在使用linux系统时,经常会遇到需要修改用户权限为root权限。通过修改用户所属群组groupid为root,此操作只能使普通用户实现享有部分root权限,普通用户仍不能像root用户一样享有超...

怎么用ip命令在linux中添加路由表项?

在Linux中添加路由表项,可以使用ip命令的route子命令。添加路由表项的基本语法如下:sudoiprouteadd<network>via<gateway>这...

Linux配置网络

1、网卡名配置相关文件回到顶部网卡名命名规则文件:/etc/udev/rules.d/70-persistent-net.rules#PCIdevice0x8086:0x100f(e1000)...

Linux系列---网络配置文件

1.网卡配置文件在/etc/sysconfig/network-scripts/下:[root@oldboynetwork-scripts]#ls/etc/sysconfig/network-s...

取消回复欢迎 发表评论: