知识大全 Oracle 9i 数据库设计指引全集(4)
Posted 数据库
篇首语:白头若是雪可替,世上何来苦心人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Oracle 9i 数据库设计指引全集(4)相关的知识,希望对你有一定的参考价值。
Oracle 9i 数据库设计指引全集(4) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
外键值可用null的问题 外键列如没有明确说明not null 可插入null记录(而null是在外部表的记录中没有的) 如无可插null记录的想法 要对外键字段加not null约束 序列 sequence 跳号的问题 sequence 因回滚 系统崩溃(使用cache 内的值将认为已用) 多表引用都将使其跳号 所以不能用于为连续序号 utl_row cast_to_row unicn\\ intersect\\ minus 使用ordey by的注意事项 以上语句进行连表操作 而表同表的字段顺序的类型相同但字段标题名可不同 使用ordey by时后面如果是字段名 要求所有的表的字段标题名相同 否则用字段的顺序号 select id name year from user union select no name to_number(null) year from user order by name year 安全性 Where 条件 无论在使用Select 还是使用破坏力极大的Update和Delete语句时 一定要检查Where条件判断的完整性 不要在运行时出现数据的重大丢失 如果不确定 最好先用Select语句带上相同条件来果一下结果集 来检验条件是否正确 完整性 有依赖关系的表 例如主外键关系表 在删除父表时必须级联删除其子表相应数据 或则按照某种业务规则转移该数据 I中表中字段缩小及变类型 字段为空或表空 varchar和char长度不变可任意改 字段名和表名可字段可用 ALTER TABLE table SET UNUSED (column) 设定为不可用 注意无命令再设为可用 备份恢复设计原则 数据库exp/imp备份恢复 Oracle数据库的Exp Imp提供了数据快速的备份和恢复手段 提供了数据库级 用户级和表级的数据备份恢复方式 这种方法一般作为数据库辅助备份手段 数据库级备份原则 在数据库的数据量比较小 或数据库初始建立的情况下采用 不适合 * 的在线生产环境数据库备份 用户级备份原则 在用户对象表数据容量比较小 或则用户对象初始建立的情况下使用 表级备份原则 主要在以下场合采用的备份方式 参数表备份 静态表备份 分区表的分区备份 数据库冷备份原则 数据库冷备份必须符合以下原则 数据库容量比较小 数据库允许关闭的情况 Rman备份恢复原则 这种方式适用于 * 环境下的联机热备份情形 Catalog数据库 单独建立备份恢复用的数据库实例 尽可能与生产环境的数据库分开 确保catalog与生产数据库的网络连接良好 在 I系统使用良好的备份策略以可 支持完全使用控制文件保存catalog信息 备份策略如下 backup spfile format /data/backup/%d_SPFILE_%T_%s_%p bak ; sql alter system archive log current ; backup archivelog all format /data/backup/%d_ARC_%T_%s_%p bak delete all input; backup current controlfile format /data/backup/%d_CTL_%T_%s_%p bak ; 在spfile 控制文件 数据库全丢的情况下可通过下面的方式恢复 RMAN> connect target connected to target database (not started) RMAN> startup RMAN> restore spfile from /data/backup/MDB_SPFILE_ _ _ bak ; SQL> startup ORA : error in identifying controlfile check alert log for more info RMAN> restore controlfile from d:\\DB _CTL_ _ _ BAK ; Mout database: RMAN> recover database; RMAN> alter database open resetlogs; 注意 对数据库设定控制文件保存备份信息为 天 具体语句如下 alter system set control_file_record_keep_time= SCOPE=BOTH; Archive Log 设置Archive Log 的位置 确保存储介质有足够的空间来保留指定时间内archive log的总量 建设定期对RMAN进行全备份 删除冗余归档日志文件 全备份策略 对于小容量数据库 可以采用全备份策略 对于大容量数据库 必须制定全备份策略方案 备份时对archive log进行转储 同时冷备份catalog 数据库 增量备份策略 对于大容量数据库 必须制定增量备份 累积备份和全备份的周期 备份时对archive log进行转储 同时冷备份catalog 数据库 恢复原则 采用Rman脚本进行数据库恢复 数据库恢复有以下几种 局部恢复 主要用于恢复表空间 数据文件 一般不影响数据库其他操作 完全恢复 数据库恢复到故障点 由catalog当前数据库决定 不完全恢复 恢复到数据库的某一时间点或备份点 恢复catalog数据库 恢复数据库control file 恢复到数据库某一时间点 重设日志序列 备用数据库原则 数据库系统在以下情况下可以考虑采用备用数据库data guard原则 数据库容量适中 数据库严格要求 * 不间断 或间断时间要求控制在最小范围内 数据库要求有异地备份冗余 一些小经验 使用oemc的oms时 首选项要求是节点和数据库分别加入系统用户(如 administrator)和数据库DBA用户(system) 节点的系统用户必须有批处理作业登录的权限 agent 不能启动 lisnter修改后都要手动删除oracle\\ora \\neork\\agent 中的* q文件 oracle\\admin\\my i\\bdump 中是用户的出错日志 改变表的空间的方式alter table hr ssss move TABLESPACE example(要重建索引); 或用imp导入时 设定导入用户只有某一表空间的使用权 无RESOURCE角色和UNLIMITED TABLESPACE权限 aleter system set log_checkpoint_to_alter=true 后可报警文件发现checkpoint的起动和结束时间 系统调优知识 生成状态报表(statspack的使用) 使用(存放位置@?\\rdbms\\admin\\)的文件生成报表用户 @?\\rdbms\\admin\\Spcreate sql建表 将timed_statistics设定true 使用生成的perfstat用户登录 执行以下语句手动收集信息 Exex statspack snap Exec statspack snap(I_SNAP_LEVEL=> I_MODEFY_PRAMETER=>TRUE) 级 最少 最大 使用下面的语句生成状态报表 @?\\rdbms\\admin\\Spreport sql 其他相关文件 delete stats$snapshot ;清原来记录数据 @?\\rdbms\\admin\\Saputo sql select job from user_jobs 取用户作业号 exec dbms_remove(作业号) timed_statistics=true要求 @?\\rdbms\\admin\\spdrop sql ; sql追踪 设定全部用户跟踪 alter system set sql_trace=true; 用户级别跟踪 alter session set sql_trace=true; 用户的跟踪文件生成在 admin\\pid\\udump\\pid _ora_ SPID trc 中 spid从下面语句得到 SELECT b name bkpr s username p spid s sid s serial# FROM v$bgprocess b v$session s v$process p WHERE p addr = b paddr(+) AND p addr = s paddr and s username=user; DBA对特定用户跟踪 exec dbms_system_set_Sql_trace_in_session(sid serial# true) 信息从下面得到 SELECT b name bkpr s username p spid s sid s serial# osuser s program FROM v$bgprocess b v$session s v$process p WHERE p addr = b paddr(+) AND p addr = s paddr; /*p spid用于sql_trace时日志编号 dbms_system set_sql_trace_in_session(sid erial# true)*/ 用户的跟踪文件生成在 admin\\pid\\udump 中 系统的跟踪文件生成在admin\\pid\\bdump\\alert_pid log tkprof exe将log文件生成格式化文本 在av Rd(ms) 以上说明表空间使用过用频繁 考虑将表分开其他表空间上 系统变量fast_start_mttr_target的值要大到不产生log等待 当然也可通过加log组使其不等待 reao log大小应为每 分钟切换一次 建议表空间的利用率不超 % buffer hit 要达 %以上为好 内存调整 一般的内存分配原则 SGA %(其中 % DATA BUFFER % SHARE POOL 其他) PGA % OS % 例如 G的WINDOWS的平台 OS M SAG G PGA M 内存 cha138/Article/program/Oracle/201311/17223相关参考
Oracle9i数据库设计指引全集(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数据库物
Oracle9i数据库设计指引全集一 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数据库物理设
知识大全 Oracle 9i 数据库管理实务讲座(一)-如何安装Oracle 9i Enterprise E
Oracle9i数据库管理实务讲座(一)-如何安装Oracle9iEnterpriseE 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发
知识大全 Oracle9i 数据库管理实务讲座(五)-手动建立 Oracle9i 数据库
Oracle9i数据库管理实务讲座(五)-手动建立Oracle9i数据库 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们
知识大全 Oracle9i 数据库管理实务讲座(四)-Oracle9i 数据库实体结构
Oracle9i数据库管理实务讲座(四)-Oracle9i数据库实体结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们
知识大全 Oracle9i 数据库管理实务讲座(六)-利用 DBCA 建立 Oracle9i 数据库(1)
Oracle9i数据库管理实务讲座(六)-利用DBCA建立Oracle9i数据库(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布
Oracle数据库9i关于审计(图) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 审计的作用
Oracle9i数据库管理实务讲座(四) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Orac
Oracle9i数据库管理实务讲座(二) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Orac
知识大全 Oracle 9i 数据库管理实务讲座(一)之I部分
Oracle9i数据库管理实务讲座(一)之I部分 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!