OracleRDBMS应用系统设计与开发_第1页
OracleRDBMS应用系统设计与开发_第2页
OracleRDBMS应用系统设计与开发_第3页
OracleRDBMS应用系统设计与开发_第4页
OracleRDBMS应用系统设计与开发_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

OracleRDBMS应用系统设计与开发赵元杰136013656811内容提要 团队与合作问题;Oracle关键问题;数据库设计方法问题;Oracle功能的发现与使用问题;严谨的程序设计问题;测试阶段管理问题;试用问题。2团队与合作-现代软件项目特 互联网的时代:项目小组:项目小组的成熟度和能力,而非个别程序员的个人魅力;

程序员准确定位;程序员不是斗士;一般是杀不净的BUG。几百个数字英雄却很难铸造出一个强劲的产业:流水线的软件产业;

强有力的团队共同协作;担任不同角色和责任。管理者要做:将多个自由英雄团结起来;组建出高效的开发小组;中国不缺个人英雄,而是缺乏强有力的团队。3团队与合作-项目小组角色与分工 经常面临的问题

:项目无法按期完成,完成以后还要不断修补完善,对软件人员和用户来说象一场噩梦遥遥无期;

项目进行当中人员流失,产品夭折;

客户需求不断改变,永远对开发完成的产品不满意;

开发成员之间矛盾不断,互相抱怨,工程进展缓慢;小组成员分工不均,工作分配失去平衡等等;

问题对策

:项目负责人责任(称之为组长或项目经理);项目负责人能力(古人云:一将无能,累死千军);项目经理根据需求制定出开发的目标;确实落实到实际中。4团队与合作-项目小组角色与分工角色与分工:角色性质角色分工项目管理人员

项目经理

产品经理技术经理系统分析人员

框架设计系统分析员软件设计师商务分析人员业务流程分析员业务功能设计员数据库工程师

数据库设计员

5团队与合作-项目小组角色与分工角色与分工:角色性质角色分工程序开发人员

软件实施员

质量控制人员集成测试员测试设计师课程设计师技术文档编写员技术支持人员售前工程师售后工程师系统管理人员系统管理员

辅助设计人员专业美工VI设计师6团队与合作-项目小组角色与分工 形成一致的意见:是否已经很清晰的理解了开发的需求和目标,并使每个人员充满斗志地准备开始完成共同的目标?是否制定了一套规范的、经过评测的、可复用的技术框架;每个人的角色分工是不是都非常清楚地落实了;是不是已经制定了开发过程中的周期划分及评估办法?而不是冒险等项目期限快到的时候才发现补牢已晚;7团队与合作-项目小组角色与分工 形成一致的意见(续):项目管理人员是否有随时把握开发进度的有效手段?小组人员是否都互相认识而且熟悉;每个人是否都明白和他关联的角色是谁,相互之间的工作流程?是否忘了布置文档撰写及管理的方法或标准?8团队与合作-DBA-总设计师-开发人员一般DBA与开发者存在障碍;主要问题是“所有权”:职责与分工问题;DBA觉得是问题的替罪羊;需要沟通。问题在于对策:搞好关系,责任明确;DBA是数据库的维护者;开发者是使用数据库人员;为了共同的目标。9团队与合作-DBA责任一般DBA负责数据库管理;也涉及数据库的逻辑设计;执行物理设计的实现;协作开发人员工作;确保高性能、安全及备份恢复。10内容提要团队与合作作问题;Oracle关键问题;数据库设计计方法问题题;Oracle功能的发现现与使用问问题;严谨的程序序设计问题题;测试阶段管管理问题;;试用问题。。11Oracle关键问题-Oracle安装问题操作系统的的安装问题题:规划磁盘空空间;交换空间问问题;一般空间问问题。Oracle安装建议:默认安装与与自定义安安装问题;;数据文件与与日志文件件等问题;;安装需要的的选件问题题。12Oracle关键问题-表空间与与数据文件件开发阶段考考虑的问题题:要接近将来来的实际情情况;磁盘空间的的分配;开发环境与与实际环境境的空间比比例问题。。为开发阶段段创建USER/INDEX表空间;表空间存放放开发阶段段的对象;;不要将对象象创建在SYSTEM表空间上:ALTERUSERQUOTA限制;用EXP/IMP将用户对象象从SYSTEM表空间移出出;或ALTERTABLEMOVE移动。13Oracle关键问题-表空间与与数据文件件数据文件大大小问题:在OS允许情况下下,要中庸庸一些为好好;不要轻易RESIZE;与实际数据据量比例计计算;Oracle10g的BIGFILE问题题:支持持大大文文件件;;与OS有关关;;与32bit和64bit有关关;;与Oracle块大大小小有有关关。。Oracle9i/10g的OMF问题题:支持持OMF管理理;;维护护带带来来危危险险;;文件件大大小小也也不不合合理理。。14Oracle关键键问问题题-日日志志文文件件问问题题日志志文文件件分分布布问问题题:树立立开开发发环环境境就就是是实实际际的的模模拟拟;;一般般开开始始就就应应注注意意安安全全与与性性能能;;日志志文文件件在在不不同同的的磁磁盘盘;;与归归档档日日志志文文件件分分开开。。日志志文文件件大大小小问问题题:应用用DML并发发数数据据量量;;8i默认认太太小小;;9i默认认太太大大;;10g默认认还还合合理理;;可创创建建合合理理大大小小并并删删除除小小的的日日志志文文件件。。15Oracle关键键问问题题-临临时时表表空空间间问问题题临时时表表与与临临时时文文件件问问题题:8i临时时表表对对应应数数据据文文件件;;9i/10g临时时表表空空间间对对应应临临时时文文件件(TEMPFILE);;排序序的的最最大大数数据据量量的的估估计计。。临时时文文件件大大小小问问题题:临时时文文件件一一次次给给足足;;告诉诉程程序序不不要要随随便便用用ORDERBY等语语句句;;总设设计计师师对对排排序序的的理理解解与与估估计计;;索引引、、集集合合操操作作等等。。16Oracle关键键问问题题-用用户户、、权权限限于于角角色色总设设计计师师规规划划与与DBA创建建;;创建建用用户户名名与与实实际际用用户户问问题题;;Oracle系统统角角色色::Oracle默认认系系统统权权限限;;开发发权权限限与与管管理理权权限限;;是否否创创建建应应用用角角色色问问题题。。17用户户权限限角色色UPDATEONEMPINSERTONEMPSELECTONEMPCREATETABLECREATESESSIONHR_CLERKHR_MGRABCOracle关键键问问题题-用用户户角角色色与与权权限限18Oracle关键键问问题题-用用户户与与权权限限160多种种系系统统权权限限(systemprivileges):参考考原原版版OracledatabaseSQLreference参考考原原版版OracledatabaseadministratorSELECTDISTINCTPRIVILEGEFROMdba_sys_privsorderbyPRIVILEGE对象象权权限限(Objectprivileges):参考考原原版版OracledatabaseSQLreference参考考原原版版Oracledatabaseadministrator角色(老三样样)CONNECT、RESOURCE、DBAselect*fromdba_roles19Oracle关键问题-用用户与权限一般用户权限限:权限说明CREATESESSION

允许用户联到ORACLE数据库,用户可访问ORACLE

ALTERSESSION

允许用户发出ALTERSESSION设置系统参数

FORCETRANSACTION

允许用户在本地数据库中提交或回滚分布数据库事务.一般不用设置该权限

20Oracle关键问题-用用户与权限一般开发者权权限:权限说明CREATECLUSTER创建属于开发者自己的表聚簇,开发者也能撤消他们拥有的聚簇

CREATEPROCEDURE创建属于开发者的存储过程,软件包和函数.开发者也能撤消他们所拥有的这些对象

CREATEDATABASELINK定义一个数据库连接,因为这是一个命名的指向其它数据库的指针,所以这个特性类似同义词,主要差别是可以存储远程系统中的Oracleid和口令作连接的一部分

21Oracle关键问题-用用户与权限一般开发者权权限(2):权限说明CREATEPUBLICSYNONYM为了引用一个诸如表或视图的数据库对象所创建的一个替代名,实例中的任何用户都能使用这个名称调用它所代表的对象,用户要访问对象仍需要对象权限DROPPUBLICSYNONYM为了引用数据库对而删除替代名称,该数据库对象可实例中的所有用户使用

CREATESEQUENCE创建一个开发者所有的序列,开发者也能撤消任何他们建立的序列

22Oracle关键问题-用用户与权限一般开发者权权限(3):权限说明CREATESNAPSHOT为了引用一个诸如表或视图的数据库对象所创建的一个替代名,实例中的任何用户都能使用这个名称调用它所代表的对象,用户要访问对象仍需要对象权限DROPPUBLICSYNONYM为了引用数据库对而删除替代名称,该数据库对象可实例中的所有用户使用

CREATESEQUENCE创建一个开发者所有的序列,开发者也能撤消任何他们建立的序列

23Oracle关键问题-用用户与权限一般开发者权权限(4):权限说明CREATESNAPSHOTP创建一个位于另一个ORACLE实例中的表的本地考备,开发者也能撤消他们拥有的快照CREATESYNONYM创建一个专用的同义词(仅供开发者使用),开发者也能撤消他们拥有的任何同义词CREATETABLE开发者可以创建表和删除表24Oracle关键问题-用用户与权限一般开发者权权限(5):权限说明CREATETRIGGER开发者可以创建或删除他们拥有的触发器CREATEVIEW开发者可以创建或删除他们拥有的视图UNLIMITEDTABLESPACE允许开发者在表空间中创建对象而不受表空间大小限制CREATETYPEDROPTYPE允许开发者创建新的对象类型删除对象类型CREATELIBRARY允许开发者创建新的对象库删除对象库25Oracle关键问题-用用户与权限DBA权限与ANY:能做任何的意意思,如CREATEANYTABLE;SYS具有此权限;;普通开发者不不需要ANY。动态的PL/SQL用ANY:在SQL>下能将对象创创建到另外用用户下;一般在PL/SQL下不能,请用用ANY即可;进入测试后建建议不要用ANY。26Oracle关键问题-用用户与权限DBA权限与ANY:权限说明ANALYZEANY允许用户收集最优化统计,使结构有效或识别在数据库的任何表,表聚簇中被移动和被链接的行ADUITANY允许用户对数据库中的任何对象进行审计CREATEANYCLUSTER允许用户创建聚簇,并给数据库中的任何用户赋予所有权27Oracle关键问题-用用户与权限SYSDBA与SYSOPER:SYSDBA(以sysdba连接才有效):执行STARTUP和SHUTDOWN操作ALTERDATABASE:open,mount,backup,或changecharactersetCREATEDATABASEDROPDATABASECREATESPFILEALTERDATABASEARCHIVELOGALTERDATABASERECOVER包括RESTRICTEDSESSION权限28Oracle关键问题-用用户与权限SYSDBA与SYSOPER:SYSOPER:执行STARTUP和SHUTDOWNCREATESPFILEALTERDATABASEOPEN/MOUNT/BACKUPALTERDATABASEARCHIVELOGALTERDATABASERECOVER包括RESTRICTEDSESSION权限SYSTEM类似SYSOPER:SYSTEM权限没有SYS那么多SYSTEM和DBA角色均能改SYS的口令SYSTEM和SYS口令忘记:创建口令文件件orapwd29内容提要团队与合作问问题;Oracle关键问题;数据库设计方方法问题;Oracle功能的发现与与使用问题;;严谨的程序设设计问题;测试阶段管理理问题;试用问题。30数据库设计方方法问题应用系统的类类型:OLTP系统:并发用户数多多(高峰);;安装时选择默默认的块大小小;表结构要考虑虑INITRANS等参数;OLAP系统:并发用户数少少(高峰);;每次I/O量、块大小要要大些;不用考虑INITRANS等参数;DSS系统:只读表空间问问题;用户也要分3、6、9等等以满足统统计分析用户户要求;大数据处理要要避开高峰时时运行。31数据库设计方方法问题图形界面与脚脚本问题:图形界面方便便、直观,但但也要脚本;;脚本便于阅读读;文档就是脚本本,而不是图图形的拷贝;;移植到真实环环境是脚本,,而不是图形形界面。脚本与注释问问题:脚本也要加详详细注释,脚脚本就是程序序;脚本的书写要要求可读性;;脚本也要有规规范;脚本规范参考考…/rdbms/admin中Oracle的样例。32数据库设计方方法问题自动创建与卸卸出问题:采用脚本自动动创建表空间间、用户、权权限;采用脚本自动动创建表、索索引、约束、、视图;卸出脚本单独独形成文件;;正式运行后卸卸出脚本要保保管好(不要要放在磁盘里里)。脚本与与环境境有关关问题题:脚本也也可带带变量量;数据文文件路路经(Windows/UNIX/LINUX);表空间间名不不变(10g可改名名),,数据据文件件大小小可变变;规模大大小可可变。。33数据库库设计计方法法问题题数据库库结构构一次次创建建问题题:不要采采用图图形工工具创创建;;不要经经常ALTERTABLE;ALTERTABLE要经总总设计计师的的批准准;ALTERTABLE要在文文档上上修改改。必要的的ALTER问题::存储参参数不不合理理时用用;建议不不要使使用联联机重重定义义;联机重重定义义是对对不合合理的的已经经存在在结构构进行行定义义;不合理理就迁迁移到到新表表空间间。34数据库库存储储设计计问题题空间的的有效效利用用问题题:Oracle数据文文件结结构;;Oracle存储块块结构构;不同的的对象象采用用不同同的块块大小小。Oracle9i/10g块的可可变问问题::9i开始支支持块块大小小可变变;可变也也得考考虑合合理;;根据不不同对对象特特性设设计块块大小小与表表空间间;总设计计师要要研究究Oracle的PCTFREE和PCTUSED。35数据库库存储储设计计问题题应用系系统的的数据据存储储量:大表一一定分分区:表分区区;索引也也要分分区;;中等数数据量量的表表要考考虑STORAGE参数。。大表小小表、、索引引要做做:Storage估计;;索引与与的访访问来来确定定PCTFREE;表要分分相对对固定定与修修改频频繁;;要根据据表修修改频频率确确定PCTFREE和PCTUSED;不同的的Oracle版本PCTFREE和PCTUSED差别。。36内容提提要团队与与合作作问题题;Oracle关键问问题;数据库库设计计方法法问题题;Oracle功能的的发现现与使使用问问题;;严谨的的程序序设计计问题题;测试阶阶段管管理问问题;;试用问问题。。37Oracle功能发发现问问题Oracle产品选选件::Oracle企业与与标准准版差差异;;Oracle的Partition常被遗遗忘问问题;;不用选选件不不要装装;Oracle产品已已装哪哪些选选件::SELECT*FROMV$OPTION;38Oracle功能发发现问问题Oracle一般的的功能能:Oracle的Partition被遗忘忘问题题安装时时选择择;在设计计时使使用;;在SQL中使用用。Oracle的Cluster被遗忘忘问题题设计时时选择择;提高性性能。。Oracle的IOT被遗忘忘问题题设计时时选择择;非结构构化数数据可可提高高性能能。Oracle的NEST表被遗遗忘问问题设计时时选择择;复杂关关系:可减减少查查询时时的关关联。。39Oracle功能发发现问问题Oracle内置包包:基本内内置包包DBMS_JOB;;DBMS_PIPE;DBMS_SQL;;...Oracle特殊的的内置置包::需要安安装的的内置置包DBMS_PROFILE;;DBMS_TRACE;;...40内容提提要团队与与合作作问题题;Oracle关键问问题;数据库库设计计方法法问题题;Oracle功能的的发现现与使使用问问题;;严谨的的程序序设计计问题题;测试阶阶段管管理问问题;;试用问问题。。41严谨的的程序序设计计问题题程序员员要理理解::事务处处理技技术::明确的的COMMIT/ROLLBACK;由DDL语句隐隐含地地完成成;用户正正常的的断开开(Disconnect)––自动提提交(autocommit);;异常的的终止止––自动动回滚滚(autorollback);;在程序序中体体现。。理解事事务的的属性性:原子的的(Atomicity)––所有的的或没没任何何事.一致性性(Consistency)–每个事事务之之前或或之后后.独立性性(Isolation)––各自独独立执执行.耐久性性(Durability)––成功的的提交交可保保数据据长久久保存存在数数据库库中。。42严谨的的程序序设计计问题题程序员要理理解:Oracle对象:表结构如何何查看;表之间关系系如何查看看;索引与表的的关系;PL/SQL程序与Trigger。业务的流程程:各业务的处处理流程;;业务与各表表的关系;;业务与事务务的联系。。43严谨的程序序设计问题题程序员要掌掌握:开发工具::熟练使用PL/SQL编程;开发工具的的熟练使用用;数据库DML:DML语言;忌讳和建议议的SQL语句;动态的SQL问题;程序员要活活学活用::要理论联系系实际;数据库业务务总是以事事务来处理理;将用户的业业务理解成成事务并在在程序中体体现;要实现事务务的处理要要求所涉及及的语句。。44严谨的程序序设计问题题程序员要活活学活用问问题:照搬与模仿仿:有的例子与与你的情况况可能不符符;注意搜集各各种技巧,,可学习方方法;学习权威专专家的样例例。Oracle原版资料::详细的内容容还是要看看原版;OCP/OCM资料偏概念念;中文网站文文章有水平平的不多(互相转载载)。45严谨的程序序设计问题题错误的捕捉捉与提示问问题:普遍问题::多数人仅仅仅编写能够够实现应用用程序正面面功能;用户只会以以正确的方方式输入正正确的数据据;系统(软件件和硬件))总是处于于良好的运运行状态。。结果是:应用程序中中总会存在在着不止一一个的bug;;用户总能找找到恰当的的时机使得得你的程序序出错;不预先花费费时间来正正确调试-无休止的善善后工作;PL/SQL中的错误处处理被忽略略。46内容提要团队与合作作问题;Oracle关键问题;数据库设计计方法问题题;Oracle功能的发现现与使用问问题;严谨的程序序设计问题题;测试阶段管管理问题;;试用问题。47测试阶段性能测试::增加用户观观察应用反反应最高容许能能力硬件测试::增加硬件((如内存))减少硬件(拔掉硬盘盘、内存))容错测试::关闭主数据据库,备用用数据库能能否接管检查事务的的丢失情况况48测试阶段测试阶段考考虑的问题题:DBA创建另外的的环境;尽量模拟用用户的真实实环境;系统架构师师与DBA配合。考虑模拟数数据:为关键表产产生模拟数数据;模拟数据从从几万到几几十,再到到几百万;;模拟插入入、删除除、修改改操作系系统的确确响应;;模拟10用户(进程)到100用户户的资源源竞争情情况。49测试阶段段测试操作作考虑的的问题:采用跟踪踪搜索运运行的情情况;从数据字字典查询询;并发用户户如何模模拟问题题。搜集和分分析测试试数据:采用有小小工具搜搜集测试试数据;;分析各阶阶段的运运行情况况

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论