oracle的基本结构
oracle软件(RDBMS)
oracle软件:关系型数据库管理系统
在linux系统上,oracle软件安装在:/u01/app/oracle这个目录下
oracle数据库(database)
oracle数据库:它是由一推文件组成,建数据库(使用dbca命令建库),建立在/oradata这个目录下
数据库里面放的就是表
数据库和软件是完全相互独立的,互不影响
数据库里面的文件:
1、参数文件
2、控制文件
3、数据文件:放着表
4、redo log日志文件:重做日志文件
5、archive log文件:归档日志文件
oracle实例(instance)
图解:
oracle软件,然后建了一个数据库,然后打开数据库,打开的时候,oracle会在内存里面划出一部分空间出来,然后起了一堆进程,然后这个内存和进程合起来就叫做数据库实例;
用户通过oracle软件连接上数据库实例,然后通过实例再访问数据库,访问表的时候,先从数据库里调到内存,再从内存里返回给用户
这就有一个问题了:
oracle数据库打开以后,这个内存有多大,怎么控制,要起多少进程,等等这些相关的设置,通过参数文件知道的,参数文件控制实例的情况
控制文件的作用:
有多少数据文件,多少redo log文件,这些就叫做数据库的物理结构,这些文件就在控制文件中记录着,所以控制文件的作用就是存储数据库的物理结构
redo log文件:
用户修改一个表,oracle会把修改这个动作记录成日志,然后这个日志就存到redo log日志里面去,存起来;将来表坏了,我们就可以使用日志把这个表重新恢复出来
图解:
假设有三个redo log,第一个用完了,用第二个,第二个用完了,用第三个,第三个用完了,再过来覆盖第一个,循环使用;当日志满了以后,要被循环使用的时候,oracle会把日志拷贝出来,存放到归档日志里面去
oracle数据库启动的时候,先读spfile,根据spfile里面的设置生成实例,spfile里面记录着控制文件的位置,然后根据spfile找到控制文件,打开控制文件,然后控制文件里面记录着数据库的物理结构在什么位置(数据文件和redo log),然后根据控制文件找到数据文件和redo log,然后把它们打开,数据库就打开了
归档日志在数据库运行期间是不打开的
标签:文件,log,数据库,实例,讲解,oracle,日志,redo From: https://www.cnblogs.com/xgq20210831/p/18548133