您的位置:首页 > 其它

controlfile 和spfile ,常见问题

2013-10-15 17:34 288 查看
一、控制文件controlfile

1、定义 controlfile是一个小的二进制文件,定义了当前数据库的物理状态,并维护数据库的一致性、完整性。启动数据库到mount,可以对数据库进行操作。 一个controlfile只能连接一个数据库,丢失需要recover,大小有创建脚本决定。2、ontrolfile的内容,contents数据库的名字和标识符 database name and identifier

数据库的创建时间戳

表空间名字 tablespace_name

数据文件和日志文件的名字以及路径

当前redolog的文件序号 sequence number

Checkpoint information

Begin and end of undo segments

Redo log archive information

Backup information 备份信息

3、备份控制文件1、Alter database backup controlfile to trace ;备份控制文件的脚本到trace文件,可以VI打开;
Alter database backup controlfile to '/path';备份出来的是二进制文件.
Alter database backup controlfile to traceas '../../../';备份出来控制文件脚本到指定路径及文件名.
2、实体拷贝,拷贝出来的是二进制文件。
3、为什么要备份控制文件
当从备份中恢复数据库时,需要同事restore控制文件。

没有备份控制文件时就可以通过第一步中的方式备份。

如果备份文件过新或者过旧,通过备份控制文件到trace,然后根据脚本在nomout下重新创建控制文件。

4、在spfile启动的时候修改controlfileAlter system set control_files = '../../../','../../../' scope=spfile

Shutdown immediate;

增减实体控制文件

Open

5、在pfile情况下修改controlfileShutdown immediate;

增减实体控制文件

修改pfile

Open

6、获得controlfile信息 obtain controlfileinformationv$controlfile: liststhe name and status of all control files associated with the instance 结合实例列举了包含所有控制文件的名字\状态v$parameter: listsstatus and location of all parameters 包含所有参数的nane和statusv$controlfile_record_section: provides information about the control file record section 提供控制文件的记录段信息Show parameter control_files: lists the name,status,location of all controlfiles 列举所有控制文件的名字,状态以及位置 7、控制文件坏了怎么办?
没有全部坏,复制别的镜像进去。

全坏的话,如果有trace,用trace下的脚本重建.没有trace就从其它地方down一个过来,可以是旧版本的,网上的,然后开库,resetlogs.

trace文件路径,11g可以用select value from v$diag_info where name ='Default Trace File'; 11g以前需要人工查找,showparameter BACKGROUND_DUMP_DEST;trace文件的目录最好的办法是在备份的时候tail -f alert.log,里面会显示出备份到哪个文件,直接VI打开.
alert告警日志的路径,11g查询方式如下:XML位于 select value from v$diag_info wherename ='Diag Alert';LOG位于 select value from v$diag_info wherename ='Diag Trace';
由于控制文件中不包含临时表信息,可以通过以下两种办法解决。

①、重建 create temporary tablespace TEMPT2S tempfile'/u01/app/oracletempts2.dbf' size 50m;
Alter default temporary tablespace temp2;
②、重新指定原来的临时文件
create temporary tablespace TEMPTS2 tempfile '/u01/app/oracle/tempts2.dbf' size 50m reuse;
alter database default temporary tablespace tempts2;
二、PFILE 、SPFILE 初始化参数文件

PFILESPFILE
查看文本文件,可以VI直接打开二进制文件,不能用文本编辑器查看
启动方式数据库第一次启动时,必须由PFILE启

,然后创建SPFILE
SPFILE是缺省的启动方式
创建VI直接创建
create pfile from spfile
create spfile from pfile
路径
LINUX : $ORACLE_HOME/dbsWINDOWS : $ORACLE_HOME/database
启动顺序缺省的spfileORACLE_SID > spfile.ora > initORACLE_SID.ora
优先级最高的是在startup 后面加参数如:
startup pfile='E:\Oracle\admin\eyglen\pfile\init.ora'
更改
直接VI编辑1.通过系统更改
alter system set db_cache_size=24M scope=both
scope后面有both,spfile,memory三种参数。
both表示默认=spfile+memory,内存及spfile的任荣都修改,只对动态参数有效。
对于静态参数,scope=spfile,修改后memory的值不变,也就是说需要重启数据库才会生效。
2.修改pfile,通过pfile启动数据库,然后
create spfile from pfile;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐