2023-01-14 00:51来源:m.sf1369.com作者:宇宇
Oracle数据库使用几种结构来保护数据:数据库后备、日志、回滚段和控制文件。
1.数据库后备是由构成Oracle数据库的物理文件的操作系统后备所组成。当介质故障时进行数据库恢复,利用后备文件恢复毁坏的数据文件或控制文件。
2.每一个Oracle数据库实例都提供日志,记录数据库中所作的全部修改。每一个运行的Oracle数据库实例相应地有一个在线日志,它与 Oracle后台进程LGWR一起工作,立即记录该实例所作的全部修改。归档(离线)日志是可选择的,一个Oracle数据库实例一旦在线日志填满后,可 形成在线日志归档文件。归档的在线日志文件被唯一标识并合并成归档日志。
3.回滚段用于存储正在进行的事务(为未提交的事务)所修改值的老值,该信息在数据库恢复过程中用于撤消任何非提交的修改。
4.控制文件,一般用于存储数据库的物理结构的状态。控制文件中某些状态信息在实例恢复和介质恢复期间用于引导Oracle。
1、筹划数据库,确定数据库的使用目的,根据这一目的来觉得数据库的类型。是选择联机事务处理系统(OLTP)还是决策支持系统(DSS数据 仓库系统)。这两类系统是完全不同的系统,其调优策略是背道而驰的。在选择数据库的类型是最好不要选择通用型的general purpose,因为这种类型的数据库在管理和维护上都比较的困难。
OLTP:dml操作频繁,并行事务处理较多但是一般都很短
DSS:典型的操作是全盘扫描,长查询,长事务但是一般的事务个数少往往是一个事务独占一个系统。
2、为了规范oracle安装和各种文件的配置,oracle提供了一中优化而弹性的体系结构optimal flexiable architecture即标准的数据库体系结构布局
OFA结构涉及如下原则:
一、建立任何数据库文件可以存储在任何磁盘外置上的目录结构
二、将不同用途的对象分别存储在不同的表空间中
三、将不同的数据库组件存放在不同 的磁盘上来最大限度的提供数据库的可靠性和改进数据库 的效率
E-R图是实体-关系图,在制定数据库架构前期有着重要的作用。E-R主要来源于对系统的需求分析,来进行规划,设计。
ACID原则是数据库事务正常执行的四个,分别指原子性、一致性、独立性及持久性。
1. 事务的原子性(Atomicity)是指一个事务要么全部执行,要么不执行.也就是说一个事务不可能只执行了一半就停止了.比如你从取款机取钱,这个事务可以分成两个步骤:1划卡,2出钱.不可能划了卡,而钱却没出来.这两步必须同时完成.要么就不完成。
2. 事务的一致性(Consistency)是指事务的运行并不改变数据库中数据的一致性.例如,完整性约束了a+b=10,一个事务改变了a,那么b也应该随之改变。
3. 独立性(Isolation):事务的独立性也有称作隔离性,是指两个以上的事务不会出现交错执行的状态.因为这样可能会导致数据不一致。
4. 持久性(Durability):事务的持久性是指事务执行成功以后,该事务所对数据库所作的更改便是持久的保存在数据库之中,不会无缘无故的回滚。
1、数据库每列具有原子性(所有字段都是不可分解的原子),行不可重复,列不可再分。
2、确保非主键列必须完全依赖主键列,不能部分依赖(通常对联合组件来说)
3、确保每列值都和主键列直接相关而不是部分相关(非主键列不能相互依赖)
为了专业人员使用,方面数据化分和保密性。
数据库系统一般由有关的硬件、软件、数据库和人员四个部分组合而形成的,为用户提供信息服务的系统。
硬件:是数据库系统的物理支持,包括 CPU 、内存、外存及输入 / 输出设备。由于数据库系统承担着数据管理的任务,它要在操作系统的支持下工作,而且本身包含着数据库管理例行程序、应用程序等,因此要有足够大的内存开销。同时,由于用户的数据、系统软件和应用软件都要保存在外存上,所以对外存容量的要求也很高。
软件:软件系统包括系统软件和应用软件两类。系统软件主要包括数据库管理系统软件、开发应用系统的高级语言及其编译系统、应用系统开发的工具软件等。它们为开发应用系统提供了良好的环境,其中数据库管理系统是连接数据库和用户之间的纽带,是软件系统的核心。应用软件是指在数据库管理系统的基础上由用户根据自己的实际需要自行开发的应用程序。
数据库:是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。
人员:数据库系统的人员是指管理、开发和使用数据库系统的全部人员,主要包括数据库管理员、系统分析员、应用程序员和用户。不同的人员涉及不同的数据抽象级别,数据库管理员负责管理和控制数据库系统;系统分析员负责应用系统的需求分析和规范说明,确定系统的软硬件配置、系统的功能及数据库概念设计;应用程序员负责设计应用系统的程序模块,根基数据库的外模式来编写应用程序;最总用户通过应用系统提供的用户接口界面使用数据库。常用的接口方式有菜单驱动、图形显示、表格操作等,这些接口为用户提供了简明直观的数据表示和方便快捷的操作方法。