oracle-i-数据库设计指引全集

上传人:桔**** 文档编号:494095595 上传时间:2022-09-01 格式:DOC 页数:14 大小:45KB
返回 下载 相关 举报
oracle-i-数据库设计指引全集_第1页
第1页 / 共14页
oracle-i-数据库设计指引全集_第2页
第2页 / 共14页
oracle-i-数据库设计指引全集_第3页
第3页 / 共14页
oracle-i-数据库设计指引全集_第4页
第4页 / 共14页
oracle-i-数据库设计指引全集_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《oracle-i-数据库设计指引全集》由会员分享,可在线阅读,更多相关《oracle-i-数据库设计指引全集(14页珍藏版)》请在金锄头文库上搜索。

1、Oracle9i数据库设计指引全集一、数据库物理设计原则1.1 数据库环境配置原则 操作系统环境: 对于中小型数据库系统,采用linux操作系统比较合适,对于数据库冗余要求负载均衡能力要求较高的系统,可以采用oracle9i rac的集群数据库的方法,集群节点数范围在264个。对于大型数据库系统,可以采用sun solaris sparc 64位小型机系统或hp 9000 系列小型机系统。rad5适合只读操作的数据库,rad1 适合oltp数据库 内存要求 对于linux操作系统下的数据库,由于在正常情况下oracle对sga的 管理 能力不超过1.7g。所以总的物理内存在4g以下。sga的大

2、小为物理内存的50%75%。对于64位的小型系统,oracle数据库对sga的管理超 过2g的限制,sga设计在一个合适的范围内:物理内存的50%70%,当sga过大的时候会导致内存分页,影响系统性能。 交换区设计当物理内存在2g以下的情况下,交换分区swap为物理内存的3倍,当物理内存2g的情况下,swap大小为物理内存的12倍。 其他环境变量参考oracle相关的安装文档和随机文档。1.2 数据库设计原则 数据库sid 数据库sid是唯一标志数据库的符号,命名长度不能超过5个字符。对于单节点数据库,以字符开头的5个长度以内字串作为sid的命名。对于集群数据库, 当命名sid后,各节点sid

3、自动命名为sidnn,其中nn为节点号:1,2,,64。例如rac1、rac2、rac24。 数据库全局名数据库全局名称:.domain 数据库类型选择 对于海量数据库系统,采用data warehouse的类型。对于小型数据库或oltp类型的数据库,采用transaction processing类型。 数据库连接类型选择 oracle数据库有专用服务器连接类型和多线程服务器mts连接类型。对于批处理服务,需要专用服务器连接方式,而对于oltp服务则mts的连接方式比较合适。由于采用mts后,可以通过配置 网络 服务实现某些特定批处理服务采用专用服务器连接方式,所以数据库设计时一般采用mts

4、类型。 数据库sga配置 数据库sga可以采用手工配置或按物理内存比例配置,在数据库初始设计阶段采用按比例配置方式,在实际应用中按系统调优方式修改sga。 数据库字符集选择 为了使数据库能够正确支持多国语言,必须配置合适的数据库字符集,采用utf8字符集。 注意:如果没有大对象,在使用过程中进行语言转换没有什么影响,具体过程如下(切记设定的字符集必须是oracle支持,不然不能start): sql shutdown immediate;sql startup mount;sql alter system enable restricted session;sql alter system s

5、et job_queue_processes=0;sql alter database open;sql alter database character set internal_use we8iso8859p1;sql shutdown immediate;sql startup 数据库其他参数配置 .1 db_files db_files是数据库能够同时打开的文件数量,默认值是200个。当数据库规划时文件数量files接近或超过200个时候,按以下估计值配置: db_files = files * 1.5 .2 db_block_size 一个extent要是5个blocks的倍数为好,

6、如:一个blocks是4096字节,那一个extent就是2m、4m或8m为好。 db_block_size是数据库最小物理单元,一旦数据库创建完成,该参数无法修改,db_block_size按以下规则调整: 数据仓库类型: db_block_size尽可能大,采用8192 或 16384 oltp类型: db_block_size 用比较小的取值范围: 2048 或 4096 blocks推荐是系统操作的块倍数(裸设备块大小是512字节,ntfs是 4k,使用8k的方式在大部分系统上通用)。 数据库控制文件配置 .1 控制文件镜象 多个控制文件存放在不同的物理位置。 .2 控制文件配置 控制

7、文件中参数设置,最大的数据文件数量不能小于数据库参数db_files。 数据库日志文件配置 .1 日志文件大小 日志文件的大小由数据库事务处理量决定,在设计过程中,确保每20分钟切换一个日志文件。所以对于批处理系统,日志文件大小为几百m 到几g的大小。对于oltp系统,日志文件大小为几百m以内。 .2 日志文件组数量 对于批处理系统,日志文件组为510组;对于oltp系统,日志文件组为 35组,每组日志大小保持一致;对于集群数据库系统,每节点有各自独立的日志组。 .3 日志成员数量 为了确保日志能够镜象作用,每日志组的成员为2个。 数据库回滚段配置 在oracle9i数据库中,设计undo表空

8、间取代以前版本的回滚段表空间。 undo 表空间大小的设计规范由以下公式计算: undospace = ur * ups *db_block_size+ 冗余量 ur: 表示在undo中保持的最长时间数(秒),由数据库参数undo_retention值决定。 ups:表示在undo中,每秒产生的数据库块数量。 例如:在数据库中保留2小时的回退数据,假定每小时产生200个数据库块。则undospace = 2 * 3600 * 200 * 4k = 5.8g 数据库临时段表空间配置 数据库临时段表空间根据实际生产环境情况调整其大小,表空间属性为自动扩展。 数据库系统表空间配置 系统表空间大小1g

9、左右,除了存放数据库数据字典的数据外,其他数据不得存储在系统表空间。 1.3 数据库表空间设计原则 表空间大小定义原则 当表空间 大小小于操作系统对最大文件限制时,表空间由一个文件组成。如果表空间大小大于操作系统对最大文件限制时,该表空间由多个数据文件组成,表空间的总大小为估算为: tablespace + sum (数据段+索引段)*150%。 表空间扩展性设计原则 表空间数据文件采用自动扩展的方式,扩展容量快大小按2的整数倍(1m、2m、4m、8m、16m、32m、64m)进行扩展,创建表空间时尽量采用 nologing选项。表空间的最大限制一般采用unlimited,除非确切知道表空间数

10、据文件的最大使用范围。(一般windows 位系统的文件最大,位的unix系统系统文件最大g,但也要注意文件格式设定的文件大小),建议最大为2g。表空间采用local 管理 方式,例如:create tablespace tbs_userinfodatafile /oradata/tbs_userinfo.dbf size 8mreuse autoextend on next 2m maxsize unlimitednologgingextent management localautoallocatesegment space management auto; 1.4 裸设备的使用 一个sc

11、si设备可以 14个分区,unix操作系统256个分区,性能比文件系统方式高15左右,空间大于要小于(实际分区大小减两个oracle的数据块),比如 100m,大于为100000k,推荐在unix使用软连接(ln)方式把裸设备形成文件,用加入表空间时加resue 选项,当然也可只接把设备加入表空间,移动裸设备使用dd命令 对于windows平台,oracle提供软连接工具,实现裸设备的使用,计算一条记录的长度 二、 数据库逻辑设计原则 2.1 命名规范 表属性规范 .1 表名 前缀为tbl_ 。数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:tbl_pstn_detai

12、l。表名称不能用双引号包含。 .2 表分区名 前缀为p 。分区名必须有特定含义的单词或字串。 例如 :tbl_pstn_detail 的分区p2004100101表示该分区存储 2004100101时段的数据。 .3 字段名 字段名称必须用字母开头,采用有特征含义的单词或缩写,不能用双引号包含。 .4 主键名 前缀为pk_。主键名称应是 前缀+表名+构成的字段名。如果复合主键的构成字段较多,则只包含第一个字段。表名可以去掉前缀。 .5 外键名 前缀为fk_。外键名称应是 前缀+ 外键表名 + 主键表名 + 外键表构成的字段名。表名可以去掉前缀。 索引 .1 普通索引 前缀为idx_。索引名称应

13、是 前缀+表名+构成的字段名。如果复合索引的构成字段较多,则只包含第一个字段,并添加序号。表名可以去掉前缀。 .2 主键索引 前缀为idx_pk_。索引名称应是 前缀+表名+构成的主键字段名,在创建表时候用using index指定主键索引属性。 .3 唯一所以 前缀为idx_uk_。索引名称应是 前缀+表名+构成的字段名。 .4 外键索引 前缀为idx_fk_。索引名称应是 前缀+表名+构成的外键字段名。 .5 函数索引 前缀为idx_func_。索引名称应是 前缀+表名+构成的特征表达字符。 .6 蔟索引 前缀为idx_clu_。索引名称应是 前缀+表名+构成的簇字段。 视图 前缀为v_。

14、按业务操作命名视图。 实体化视图 前缀为mv_。按业务操作命名实体化视图。 存储过程 前缀为proc_ 。按业务操作命名存储过程 触发器 前缀为trig_ 。触发器名应是 前缀 + 表名 + 触发器名。 函数 前缀为func_ 。按业务操作命名函数 数据包 前缀为pkg_ 。按业务操作集合命名数据包。 序列 前缀为seq_ 。按业务属性命名。 表空间 .1 公用表空间 前缀为tbs_ 。 根据存储的特性命名,例如: tbs_parameter 。 .2 专用表空间 tbs_nn。该表空间专门存储指定的某一个表,或某一表的若干个分区的数据 1 数据文件 nn.dbf 。nn =1,2,3,4,等。 普通变量 前缀为var_ 。 存放字符、数字、日期型变量。 游标变量 前缀为cur_ 。存放游标记录集。 记录型变量 前缀为rec_ 。 存放记录型数据。 表类型变量 前缀为tab_ 。 存放表类型数据。 数据库链 前缀为dbl_ 。 表示分布式数据库外部链接关系。 2.2 命名 2.2.1 语言 命名应该使用英文单词,避免使用拼音,特别不应该使用拼音简写。命名不允许使用中文或者特殊字符。英文单词用对象本身意义相对或相近的单词,选择最简单 或最通用的单词,不能使用毫不相干的单词来命名。当一个单词不能表达对象含义时,用词组组合,如果

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号