本文标识 : O00000
本文编辑:严小样儿 编程工具 : Oracle
阅读时长:6分钟
ORACLE —— 关系型数据库的鼻祖
一、自我介绍 Who's Oracle
官网地址:https://www.oracle.com/index.html
大家好,我是Oracle。Oracle,西方人认为有“神谕、预言”之意,中国人则译作“甲骨文”,是当今世界最强大的数据库软件。所有这一切要从IBM的一篇论文谈起,1970年的6月,IBM公司的研究员埃德加•考特发表了一篇著名的论文——《大型共享数据库数据的关系模型》,这可以称之为数据库发展史上的一个转折点。在当时还是层次模型和网状模型的数据库产品占据市场主要位置的情况下,这篇论文拉开了关系型数据库软件革命的序幕。
1977年6月,Larry Ellison与Bob Miner和Ed Oates在硅谷共同创办了一家名为“软件开发实验室”的软件公司(Oracle公司的前身,英文缩写SDL)。Oates看到了埃德加•考特的那篇著名的论文连同其他几篇相关的文章之后,非常兴奋,他找来Ellison和Miner共同阅读,Ellison和Miner也预见到关系型数据库软件的巨大潜力。于是,这3个站在数据库界的巨人开始共同筹划构建可商用的关系型数据库管理系统(英文缩写RDBMS),并把这种商用数据库产品命名为Oracle。因为他们相信,Oracle(字典里的解释有“神谕、预言”之意)是一切智慧的源泉,就这样,当今世界最强大、最优秀的Oracle数据库诞生了。
Oracle DataBase是一款关系型数据库管理系统,同类的产品还有MySQL,SQLServer等。我们把那个承载我们核心数据的系统笼统地称为数据库服务器。RDBMS即关系型数据库管理系统(Relational Database Management System);与之相对的还有非关系型数据库,如MongoDB、Redis等。严格意义上来讲Oracle DataBase是由两个部分组成:
Instance + Database = Database Server
二、数据库服务 Oracle Database Server
官网地址:https://www.oracle.com/index.html
Oracle Database Server是由实例(Oracle Instance)和数据库(Oracle Database)组成。Oracle Instance是一组后台进程和内存结构;Oracle Database是存放在操作系统上的物理文件。
数据库由三大文件组成,分别为数据文件Data Files、控制文件Control Files、重做日志文件Redo Log Files。数据库功能的强大离不开这三个的紧密配合,当然更离不开实例里面的进程间的相互协作。
三、数据文件 Data File
官网地址:https://www.oracle.com/index.html
Oracle数据库中的表空间由一个或多个物理数据文件组成。数据文件只能与一个表空间和一个数据库相关联。
Oracle数据库通过分配指定数量的磁盘空间和文件头所需的开销,为表空间创建一个数据文件。如果文件很大,这个过程可能会花费大量的时间。任何数据库中的第一个表空间总是SYSTEM表空间,因此Oracle数据库在创建数据库时自动创建SYSTEM表空间,分配数据库的第一个数据文件。
四、实例 Instance
官网地址:https://www.oracle.com/index.html
数据库实例Oracle Instance是由一组后台进程Background Processes和内存结构SGA组成。
五、数据字典缓冲区 Data Dictionary Cache
官网地址:https://www.oracle.com/index.html
数据字典缓冲区Data Dictionary Cache主要包含对象定义、用户名、角色、权限等信息。当执行一段SQL代码时:Oracle首先需检查你是否具有执行该操作的权限。在Data Dictionary Cache中查看是否有相关信息, 若无,Oracle把信息从数据字典表读到Data Dictionary Cache中。
写在最后:
在关系数据模型中,关系可以看成由行和列交叉组成的二维表格,表中一行称为一个元组,可以用来标识实体集中的一个实体。表中的列称为属性,给每一列起一个名称即为属性名,表中的属性名不能相同。列的取值范围称为域,同列具有相同的域,不同的列也可以有相同的域。表中任意两行(元组)不能相同。能唯一标识表中不同行的属性或属性组(即多个属性的组合)称为主键或复合主键。
Oracle数据库的体系结构非常复杂,严密而周全,有各种内部机制保证数据的安全、有效。学起来,还是比较费事一些。对于数据库管理员DBA来说,如果运维Oracle数据库的话,肯定需要把体系结构吃透,但是作为使用数据库的人,一般只要了解了数据库是由什么构成,表空间是什么,数据文件是什么就够了。然后学习数据库查询语句即可。
Oracle数据库的安装比较复杂,我会单独写一篇文章手把手教大家安装Oracle数据库,方法就在次条文章,请继续点击次条。
(划重点-Oracle安装请见下一条)
期待一起成长