Oracle数据库基本概念
每个Oracle数据库都是由若干个表空间构成的,用户在数据库中建立的所有内容都被存储到表空间中。一个表空间可以由多个数据文件组成,但一个数据文件只能属于一个表空间。
Oracle数据库基本概念
(1)数据库
- 磁盘上存储的数据的集合。
- 在物理上表现为数据文件、日志文件和控制文件等,在逻辑上以表空间形式存在。
- 必须先创建数据库,才能使用Oracle

(2)全局数据库名
全局数据库名是用于区分一个数据库的标识,在安装数据库、创建数据库、创建控制文件、修改数据库结构、利用RMAN备份时都需要使用。它由数据库名称和域名构成,类似网络中的域名,使得数据库的命名在整个网络环境中唯一。例如,现在在同一个网络中有两个数据库,他们的名称都是orcl,若这两个数据库之间要建立连接,则必须使用不同的域名加以区分。例如“orcl.qingyun.com",其 中“qingyun.com”为域名。
(3)数据库实例
每个启动的数据库都对应一个数据库实例,由这个实例来访问数据库中的数据。如果把数据库简单地理解为硬盘上的文件,具有永久性,则数据库实例就是为了运行数据库,Oracle系统所运行的所有进程,和分配的内存结构的组合体。
(4)表空间
每个Oracle数据库都是由若干个表空间构成的,用户在数据库中建立的所有内容都被存储到表空间中。一个表空间可以由多个数据文件组成,但一个数据文件只能属于一个表空间。与数据文件这种物理结构相比,表空间是数据数据库的逻辑结构。
每个数据库中,都有一个名为SYSTEM的表空间,还会有SYSAUX、TEMP、UNDO、USERS等表空间,这些都是创建数据库时自动创建的。管理员可以创建自定义的表空间并分配给指定用户,也可以为表空间增加或删除数据文件。
查看数据库的表空间:
表空间包含用户、表、记录、字段。
标题用户user,权限管理
- 需为用户指定表空间(默认表空间为user),其才能建表、查询数据等。
表table
- 是存储数据的主要形式,是数据库的基本元素,由⾏和列组成。
记录record
- 由多段字列组成

(5)数据文件
通常,数据文件的扩展名是.dbf,是用于存储数据库数据的文件,如存储数据库表中的记录、索引、存储过程、视图、数据字典定义等。对于数据库操作中产生的一些临时数据,以及为保证事务必须重做的数据也有专门的数据文件负责存储。
一个数据文件中可能存储很多表的数据,而一个表的数据也可能放在多个数据文件中,即数据库表和数据文件是不存在一对一的关系的。
数据文件位置:
控制文件
通常,控制文件的扩展名是.ctl,是一个二进制文件。控制文件中可以存储︰数据文件和日志文件的信息查找数据文件。控制文件是数据库启动和运行所必须的文件。当Oracle读写数据时,要根据控制文件的信息查找数据文件。
由于控制文件的重要性,因此数据库至少要有一个以上的控制文件。Oracle11g默认包含三个控制文件,这样可以避免因为一个控制文件的损坏而无法启动数据库的问题。
控制文件位置:
日志文件
通常,日志文件的扩展名是.log,它记录了数据的所有更改信息,并提供了一种数据恢复机制,以确保在系统奔溃或其他意外出现后重新恢复数据库。
在Oracle数据库中,日志文件是成组使用的,每个日志文件组可以有一个或多个日志文件。在工作的过程中,多个日志文件组之间循环使用,当一个日志文件组写满之后,会转向下一个日志文件组。
日志文件位置:
(8)模式和模式对象
模式是数据库对象(如表、索引等,也称模式对象)的集合。Oracle会为每一个数据库用户创建一个模式,此模式为当前用户所拥有,和用户具有相同的名称。
(9)Oracle监听器Listener
Oracle监听器Listener是一个重要的数据库服务器组件,在整个Oracle体系结构中,扮演着重要的作用。它负责管理Oracle数据库和客户端之间的通讯,它在一个特定的网卡端口(默认是TCP 1521端口)上监听连接请求,并将连接转发给数据库,下面的部分,会从几个方面对监听器进行简单介绍。
使用命令对数据库监听服务进行启停,查看监听状态
DOS> Isnrctl start #启动监听器
DOS> Isnrctl stop #停止监听器
DOS> Isnrctl status #查看监听器状态
数据库配置文件
listener.ora:服务端配置,listener监听器进程的配置文件,接受远程对数据库的接入申请并转交给oracle的服务器进程
sqlInet.ora:客户端配置︰决定客户端通过什么样的方式去找一个连接中的连接字符串,如NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
tnsnames.ora:客户端配置∶记录客户端访问数据库的本地配置,同时存在于数据库客户端与服务器端(客户端与服务端不在同一台主机中)。如果在客户端连远程的数据库服务器,你就要编辑客户机上的tnsnames.ora。数据库服务端主机上的tnsnames.ora则可以不编辑。如果你在数据库服务端所在机器上登录连接数据库,你就要编辑服务端的tnsnames.ora。客户端的可以不编辑。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)