浅谈Oracle数据库的建模与设计
此步设计和系统将具体使用的数据库有关,也和数据库所运行的硬、软件平台有关,目的是尽量合理地给数据库分配物理空间,这一步在数据库设计中很重要,关系到数据库数据的安全和数据库的性能,具体的来说,这一步包括相应表空间的数据文件在磁盘上的分配,还要根据数据量的大小确定redolog文件、rollback段的大小,然后进行分配,这些文件的分配要遵循一些原则,本着利于备份,利于性能优化的原则,原则如下(以ORACLE数据库为例):
2、因为职工档案信息库里有许多编码,查询的时候要和编码库一起进行read操作,所以不把职工档案信息表和编码库放在一个表空间。
四、与开 以上是数据库建模设计的几个重要步骤的大致分析,整个设计过程是不断地改进的,是数据库管理员、设计人员、开发人员共同完成的,只是各有侧重点不同,数据库管理员侧重于是2、3步的设计,设计人员侧重于1步的设计,而开发人员侧重于4步的设计,由于有些应用系统的编程环境和实际应用环境不同,所以要做两套设计,并注意两套设计的兼容性可移植性。
数据库设计最后要考虑的是与要选择的开发软件之间的接口问题,要准备好接口程序,有些是第三方软件已经备好的,有些是数据库本身要具备的,如jdbc,bde,ado,等与数据库的接口,主要是考虑接口的可用性、效率问题。这一步主要从经验出发,因为这种产品不断出台,而且都是经过各商家的吹捧,要在实践中决定哪个是最适合。
3、建立二个rollback 表空间,十个rollback段,分区放在二个表空间里,建立一个比较大的rollback段,因为职工档案信息表经常会有批量的修改与添加。
DBWR_IO_SLAVES 设为1
ROLLBACK_SEGMENTS 根据交易量的大小,定为10个。分别放在两个磁盘上。
MTS_SERVERS 3
三、关于数据库参数的设计
2、了解终端用户怎样访问数据,如果可能,将经常同时查询和频繁查询的对象放在不同的物理磁盘上。
SHARED_POOL_SIZE, 与数据库大小有关,也与应用软件有关。这里设成缺省值的1.5倍。
首先是对数据库的数据量、数据流量、及响应速度的估算分析,这一步对物理设计也是必须的,劳资系统的主要数据是人员档案,大概有100兆左右,还有人员配备等信息加上工种序列、工资等级、厂矿车间等各种编码,总的数据量大约在某些方面300兆左右。数据的输入、维护大部分在各厂矿进行,然后到处里集中,所以数据流量很大,对响应速度要求一般。
缺省的初始化参数文件中,选择large。因为用户数很多,100个左右。
6、确立表和索引的大小,这决定了保存它们所需的表空间的尺寸,也决定了哪些表空间物理地装在哪些盘上和哪些表空间可以结合在一起。具体的估算方法可以按照oracle 一些公式,这里还要按照各个表的具体特性,用途,定义它的存贮参数如(pctfree,pctused)。
DB_BLOCK_BUFFERS 根据所用服务器的内存与交易数的大小,设为25兆。
4、将redo log文件放在一个读写较少的盘上。建立三个redo log 组,同组的两个成员放在两个盘上。因为选用的是ARCHIVELOG的备份方式。
ARCHIVE_LOG_START TRUE 采用ARCHIVE方式备份。
5、将redo log文件放在一个读写较少的盘上。对于每个oracle 实例要建立两个以上的redo log 组,同组的两个成员放在不同的设备上。
一、逻辑建模
二、物理设计
正在看的ORACLE教程是:浅谈Oracle数据库的建模与设计。要开发一个基于数据库的应用系统,其中最关键的一步就是整个系统所依据的数据库的建模设计,从逻辑的到物理的,一个环节疏于设计,整个的应用系统便似建立在危房之上,随着开发过程的不断深入,它要随时面临着各种难
1、为表和索引建立不同的表空间,禁止在系统表空间中放入非核心oracle系统成分的对象,确保数据表空间和索引表空间位于不同的磁盘磁盘驱动器上。
一、逻辑建模
在逻辑建模上的工具上,采用Rantional rose 2000,根据用户的需求,设计各种use case view, 在 logic view中生成数据库的实体,及实体之间的E-R图,然后生成Data modeler,确定以后,用Schema generation在建好的数据库中的对应的用户下生成表。
数据库设计的方法因具体数据库而异,但是建模阶段的相同的,所以可以用一些通用的工具来进行,如Rational rose,PowerDesigner等,这一阶段主要是依据系统的需求,获取与分析要实现的应用系统信息,进行数据内部以及外在关系的分析,从而有效地建立整个系统的数据结构(在关系数据库中通常称为表结构),在此基础上对数据库的数据量、数据流量、及响应速度的估算分析,这样数据模型就产生了。具体的操作准则是数据库的几个范式、用户的具体需求和分析者的经验,从数据库的性能、安全、方便管理、易于开发等方面出发,具体方法因分析员的喜好和习惯而异,可以不用工具,最好使用工具,能让分析过程简便,最主要是能生成一些图,如E-R图,让分析过程一目了然。
PROCESS 80
详细的图很繁琐,在这里就不展示了。
SORT_AREA_SIZE 根据所用服务器的内存,设为10兆
3、当数据库包含允许用户并行访问不同数据元素的大对象时,将对象分割存放在多个磁盘上是有好处的。可以采用分区。在某个操作系统平台上定义拥有数百万行的表时,则更需小心,因为数据库文件的大小受到限止,这种限制是由操作系统而不是由oracle引起的。
以预料的风险,开发者要为修改或重新设计没有设计好的数据库系统而付出难以预料的代价。所以,一个良好的数据库设计是高效率的系统所必须的。
MTS_DISPATCHERS tcp,3
三、参数的设置
该系统应用于大型企业集团,包括几十个分厂,基本数据均来源于各分厂,各分厂有一套access数据库,存贮着自己的人才档案信息,由各厂自己维护,定期传到总的数据库里,供劳资处各室查询、统计用,。这是一个分部式的数据库。
四、与开发软件的接口问题
5、根据每个表的性质,确定其存贮的参数,如职工档案信息表的修改、删除、插入都比较多,所以把它的Pctfree 10,Pctused 80定大小,估算出它大致需要的block数,算出存放这些表的表空间的数据文件的大小。
下面结合一个实际开发的劳资管理系统中的数据库设计,对以上几个步骤做进一步解释。
每个数据库在建立时,都有缺省的参数设置,但是对于具体的应用要求参数设置可能不同,缺省的参数设置往往需要根据应用系统的特点而需要改动,如每个数据库的操作系统平台、instance 数目、各种内存大小的设置、采取的线程方式、备份方式等不同,具体的参数就一定要进行最为恰当的修改,这个步骤对数据库性能很重要,也是保证应用系统所要求的数据库功能得以实现重要一步。
这些参数的确定是暂时的,没有一个系统可以运行之前把参数确定得正好,需要在应用程序运行之后进行调整。
6、根据用户的需求,建立一套数据库的安全体系。也就是总结出几种权限级别的用户,建立这些用户,并给这些用户赋上相应的仅限,供开发人员编程时使用。
二、物理设计
4、在独立的各盘上至少创建两个用户定义的rollback表空间,以存放用户自己的rollback段。在初始化文件中安排rollback段的次序,使它们在多个磁盘之间进行切换。
LOG_BUFFER 用缺省值的1.5倍。
1、因为职工档案信息库很大,还有照片,所以把它分成两个表,把照片单独地放在一个表中,并且采用分区技术,在档案表、照片表上建立分区,不同的分区分别放在不同的表空间。
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/sql/oracle/2389.shtml
相关文章
热门TAG
命令 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 技巧 权重 服务器 网站流量 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows 蜘蛛 搜索引擎 网站收录 JSP 实例解析最新文章
-
OracleRAC的五大优势及其劣
时间:2021-01-05
-
Oracle优化器 自适应执行计
时间:2021-01-05
-
Oracle行内链接不会引起U
时间:2021-01-05
-
Window下Oracle Database 11g 发行
时间:2020-12-29
-
Oracle如何实现like多个值的
时间:2020-12-29
-
maven添加oracle依赖失败问题
时间:2020-12-29
-
OracleRAC基本概念及入门
时间:2020-12-29
-
Azure File Storage 基本用法
时间:2020-12-26
热门文章
-
Azure Queue Storage 基本用法 Azure Storage 之
时间:2020-12-26
-
Oracle存储过程编程详解
时间:2020-12-07
-
win10下oracle 11g安装图文教程
时间:2020-12-25
-
oracle 数据库学习 基本结构介绍
时间:2020-12-13
-
Azure File Storage 基本用法 Azure Storage 之 F
时间:2020-12-26
-
windows使用sqlpus连接oracle 数据库的教程图
时间:2020-12-25
-
Window下Oracle Database 11g 发行版2安装教程
时间:2020-12-29
-
Oracle解锁的方式介绍
时间:2020-12-14
-
linux下oracle设置开机自启动实现方法
时间:2020-12-13
-
Oracle学习记录之使用自定义函数和触发器
时间:2020-12-07
