数据库设计与软件开发管理++(5)

2019-03-06 08:18

SQL> startup ORA-00205: error in identifying controlfile, check alert log for more info RMAN> restore controlfile from 'd:\\DB92_CTL_20031113_9_1.BAK'; Mout database: RMAN> recover database; RMAN> alter database open resetlogs;

注意:对数据库设定控制文件保存备份信息为365天,具体语句如下。

alter system control_file_record_keep_time=365 SCOPE=BOTH;

3.3.2 Archive Log

设置Archive Log 的位置,确保存储介质有足够的空间来保留指定时间内archive log的总量。建设定期对RMAN进行全备份,删除冗余归档日志文件。

3.3.3 全备份策略

对于小容量数据库,可以采用全备份策略。对于大容量数据库,必须制定全备份策略方案,备份时对archive log进行转储,同时冷备份catalog 数据库。

3.3.4 增量备份策略

对于大容量数据库,必须制定增量备份、累积备份和全备份的周期,备份时对archive log

set 进行转储,同时冷备份catalog 数据库。

3.3.5 恢复原则

采用Rman脚本进行数据库恢复。数据库恢复有以下几种:

3.3.5.1 局部恢复

主要用于恢复表空间、数据文件,一般不影响数据库其他操作。

3.3.5.2 完全恢复

数据库恢复到故障点,由catalog当前数据库决定。

3.3.5.3 不完全恢复

恢复到数据库的某一时间点或备份点。

恢复catalog数据库。

恢复数据库control file 。

恢复到数据库某一时间点。

重设日志序列。

3.4 备用数据库原则

数据库系统在以下情况下可以考虑采用备用数据库data guard原则:

数据库容量适中。

数据库严格要求7*24不间断,或间断时间要求控制在最小范围内。

数据库要求有异地备份冗余。

3.5 一些小经验

使用oemc的oms时,首选项要求是节点和数据库分别加入系统用户(如:administrator)和数据库DBA用户(system)。节点的系统用户必须有批处理作业登录的权限

agent 不能启动,lisnter修改后都要手动删除oracle\\ora9\\network\\agent 中的*.q文件

oracle\\admin\\my9i\\bdump 中是用户的出错日志

改变表的空间的方式alter table hr.ssss move TABLESPACE example(要重建索引); 或用imp导入时,设定导入用户只有某一表空间的使用权,无RESOURCE角色和UNLIMITED TABLESPACE权限

alter system set log_checkpoint_to_alter=true,后可报警文件发现checkpoint的起动和结束时间。

3.6 系统调优知识

3.6.1.1 生成状态报表(statspack的使用)

使用(存放位置@?\\rdbms\\admin\\)的文件生成报表用户

@?\\rdbms\\admin\\Spcreate.sql建表

将timed_statistics设定true

使用生成的perfstat用户登录,执行以下语句手动收集信息

Exex statspack.snap

Exec statspack.snap(I_SNAP_LEVEL=>0,I_MODEFY_PRAMETER=>TRUE) 0级,最少10最大

使用下面的语句生成状态报表

@?\\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 ;

3.6.1.2 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) 20以上说明表空间使用过用频繁,考虑将表分开其他表空间上

系统变量fast_start_mttr_target的值要大到不产生log等待,当然也可通过加log组使其不等待

reao log大小应为每30分钟切换一次

建议表空间的利用率不超80%

buffer hit 要达80%以上为好

3.6.1.3 内存调整

一般的内存分配原则

SGA 50%(其中80% DATA BUFFER,15% SHARE POOL,5其他)

PGA30%

OS 20%

例如:2G的WINDOWS的平台,OS 300M,SAG 1.2G,PGA 500M

内存分配的基本单位

SGA《=128M 4M

SGA》128M 64位系统16M,32M系统8M

动态分配时总值不可大于sga_max_size

通过V$SGA_DYNAMIC_FREE_MEMORY取空闲内存空间

在缩小时如果内存空间实际在应用中,CPU利用率将达100%,最后将语句出错。


数据库设计与软件开发管理++(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:09年自考《思想道德修养与法律基础》单项选择题及答案汇总

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: