一、控制文件
作用:
@H_301_4@
- 二进制文件
- 记录了数据库当前实例的结构和行为,数据文件日志文件的信息,维护数据库一致性
- 参数文件中定义了控制文件的位置和大小
- 很小的二进制文件,一般不超过100m
- mount阶段open以后,一直在用
- 一套控制文件只能连接一个database
- 分散放置,至少一份,至多八份
相关视图:
@H_301_4@- v$controlfile ---- 列出实例的所有控制文件的名字和状态
- v$parameter ---- 列出所有参数的位置和状态(where name='control_files')
- v$controlfile_recode_section ---- 提供控制文件的记录部分的信息
- show parameter control_files ---- 列出控制文件的名字、状态和位置
查看控制文件内容:
@H_301_4@
转储控制文件:
@H_301_4@管理控制文件:
@H_301_4@spfile 修改spfile参数control_files(alter……)@H_301_4@
状态查询:参数和具体文件是否对应、磁盘空间剩余、控制文件<100M@H_301_4@
热备控制文件:
@H_301_4@其他模式下:@H_301_4@
得到建立控制文件脚本
数据库归档模式下rman备份:
@H_301_4@
>show all中的configure controlfile autobackup设置为on
@H_301_4@
问题解决:
@H_301_4@ 控制文件不一致:
(1). 拷贝新版本的控制文件到旧版本文件
2. 修改参数文件,只使用新版本的文件(alter system set……),重启@H_301_4@
控制文件丢失:
【mount阶段,使用archive log list可以查看数据库是否在归档模式下】@H_301_4@
1. 控制文件无备份
a.数据库非归档,数据文件联机日志文件存在 --- 重建控制文件
@H_301_4@
2. 控制文件有备份
a.数据库归档,数据文件联机和归档日志文件存在 --- 还原控制文件
先全备,再将控制文件拷贝到参数指定的路径,然后@H_301_4@
二、参数设置
@H_301_4@
查询参数
@H_301_4@作用: 记录了数据库的配置。内存分配、进程数、会话数等@H_301_4@
分类:
pfile类型 ---文本文件$ORACLE_HOME/dbs/init$ORACLE_SID.ora(9i,10g默认不使用)
$ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora.xxxx(10g初始化时使用一次)@H_301_4@
spfile类型 --- 二进制文件
$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora,服务器端(9i开始使用)
能够被rman备份(rman只能备份二进制文件)@H_301_4@
oracle启动时,查找顺序为spfile create spfile[='fpath'] from pfile; 默认在$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora@H_301_4@
create spfile[='fpath'] from memory; 从内存中重建spfile@H_301_4@
如果value值为空,说明是使用pfile,否则使用的是value显示的spfile 值为true是spfile,false是pfile@H_301_4@
alter system|session set parameter_name=values scope=memory|spfile|both sid=' system ---- v$parameter中列isses_modifiable为非flase的项可以被alter session修改 memory ---- 只对当前启动的实例有效,下次启动无效 spfile重置参数默认值:@H_301_4@
alter system reset 参数 scope=spfile sid='转化:
create pfile[='fpath'] from spfile; 默认在$ORACLE_HOME/dbs/init$ORACLE_SID.ora@H_301_4@
10g指定用pfile启动:
@H_301_4@
查看当前使用的参数文件:
@H_301_4@
@H_301_4@
spfile文件的修改:
@H_301_4@
session ---- v$parameter中列issys_modifiable为非flase的项可以被alter system修改
【select name,isses_modifiable,issys_modifiable from v$parameter;】
查询出来的状态包括三种:
immdiate----动态参数,system直接修改到内存和参数文件,立即生效
false----静态参数,不能直接改,system加scope=spfile修改到参数文件
deferred----会话参数,可以使用session修改,只对当前实例有效@H_301_4@
spfile ---- 只对spfile修改,不影响当前实例,下次启动生效
both ---- 内存和spfile都修改,默认值@H_301_4@
* ---- 所有实例,用于集群环境有多个实例@H_301_4@
10g中常见参数:
@H_301_4@
隐藏参数:
@H_301_4@
显示系统中的隐藏参数
@H_301_4@