首页 > 数据库 > 国内数据库 > 数据库简单的一些原理概念
实例
实例(instance)是一组oracle后台进程或线程以及一个共享内存区, 这些内存由同一个计算机上运行的线程或进程所共享。简单的理解为:实例=后台进程(线程)+ SGA。
数据库
数据库(database)物理操作系统文件或磁盘的集合。数据库=物理文件(数据文件+控制文件+重做日志文件+临时文件)。数据库主要用于存储和检索相关信息,确保数据的一致性,并在实例失败时恢复数据。
实例与数据库的关系
数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!
数据库存储结构
一般用户不需要知道数据在数据库中如何存放。然而对数据库管理员来说,需要在安装、配置数据库时,决定数据的存放方式和位置;需要在系统运行过程中,调整数据存放以提高系统性能。如果数据库管理员能够在最初安装、配置数据库时,根据应用程序的特性,仔细地规划、合理地安排数据的存放,就能够极大地减少系统运行过程中对磁盘的 I/O 操作,这必然会带来系统性能的提高。
数据库存储结构可分为物理结构和逻辑结构。
数据库的物理结构
数据库的物理结构是面向操作系统的,它描述数据库中的数据的存储形式。在物理上oracle数据库文件包括数据文件、日志文件和控制文件。
数据文件(data files)
oracle数据库中的数据,逻辑上存放在表空间里,但物理上却是存放在数据文件里的,数据文件有如下特点,即每一个数据文件只与一个数据库相联系,数据库文件一旦建立,就不能改变大小,一个表空间可以包含一个或多个数据文件等。
查询数据文件信息数据字典和动态视图:dba_data_files、v$datafile、v$dbfile。
日志文件(redo log files)
日志文件用于记录数据库所做的全部变更,以便在系统发生故障时进行恢复。每一个数据库至少有两个日志文件。相关信息查询表:v$logfile。
数据控制文件(control files)
控制文件虽然是一个较小的二进制文件,但很重要。如果控制文件一旦被破坏,则无法对数据库进行操作。为防止控制文件被破坏,一般一个数据库应至少有二个控制文件,且分别放在不同的磁盘上,控制文件的名字是记录在参数control_files中的,或在v$controlfile表中查找。控制文件包括下列信息:
1.告知实例数据库和在线重做日志文件的位置。
2.控制文件还告知了Oracle 其他一些事情,如已发生检查点的有关信息、数库 名 (必须与DB_NAME参数匹配)、创建数据库的时间戳、归档重做日志的历(有 时这会让控制文件变大)、RMAN 信息等。
数据库的逻辑结构
数据库的逻辑组件包括表空间、段、区、块和模式。
表空间是数据库中一个最大的逻辑单位,一个oracle数据库至少包含一个表空间。一个表空间中包含一个或多个段。一个段由多个区组成。一个区由多个块组成,块是进行读写操作的最小单元。
表空间(Table Space)
数据库的逻辑存储单位。一个数据库可包含一个或多个表空间;一个表空间可跨越多个磁盘分配。一般地,在数据库初始化时,系统总是自动建立一个缺省表空间(如Oracle中的SYSTEM表空间),DBA事后可定义其他表空间。
段(Segment):
表空间中一种指定类型的逻辑存储结构。有如下类型:
数据段:每个表/簇集有一个数据段,用于存储其中的数据。
索引段:每个索引有一个索引段,用于存储索引数据。
回滚段:由DBA建立,用于临时存储要回滚(撤消)的信息,以便事务回滚。
临时段:当一个SQL语句需要临时工作区时,由DBMS建立,用完后再回收。
区(Extent)
一个段由一组区(有些地方称范围)组成,区(范围)是数据库存储空间分配的逻辑单位。
数据块(Block)
数据块是数据库中最小的数据组织单位与管理单位,oracle中的数据存储于数据块中。数据块是oracle服务所能分配、读取或写入的最小存储单元,取值范围在2KB~64KB之间,默认大小与oracle版本无关。
模式(Schema)
模式是对用户所创建的数据库对象的总称,在oracle数据库中任何数据库对象属于一个特定用户,一个用户及其所拥有的对象称为模式。模式对象包括表、视图、索引、同义词、序列、过程和程序包等。一个用户也相同名称的模式相关联,因此,模式又称为用户模式。
数据字典
oracle数据字典是oracle数据库的重要组成部分,它提供了诸如数据库结构、数据库对象空间分配和数据库用户等等有关的数据库信息。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70015605/viewspace-2883515/ ,如需转载,请注明出处,否则将追究法律责任。