参数文件
Database Administration----Reference----Part I Initialization Parameters
- pfile和spfile区别
- 文件名不同
文本参数文件pfile:命令规则init+sid.ora 例如:initorcl.ora
服务器参数文件spfile:命名规则spfile+sid.ora 例如:spfileorcl.ora
- 类型不同
pfile:文本文件
spfile:二进制文件
- 使用顺序不同
spfile优先使用,如果找不到spfile,则使用pfile文件,如果pfile文件找不到,则出错
4) spfile只能使用命令的方式修改参数、pfile可直接修改文件,重启生效
ISSES_MODIFIABLE值为flase表示不能用alter session修改
ISSYS_MODIFIABLE值为flase表示不能用alter system修改
不能使用alter session和alter system进行修改的参数,称为静态参数,对于静态参数来说,只能使用pfile进行修改
alter
session和alter
system和alter
system deferred区别
alter
session只对当前会话生效,其它会话不生效
alter
system所有会话生效
alter
system deferred对当前会话不生效,对新打开的会话生效
alter
system scope=spfile
参数需要重启生效
实验案例:
- 创建pfile
- 创建spfile
- 当前使用的是什么参数文件
- 修改动态和静态参数
- PFILE下修改参数
- 当没有SPIFLE和PFILE时,如何解决
1)利用备份进行恢复
2)利用init.ora生成pfile
ORA-00845:
MEMORY_TARGET not supported on this system
系统中/dev/shm比oracle的内存小(memory_target)
解决方法:
mount
-t tmpfs shmfs -o size=7g /dev/shm
或者修改/etc/fstab文件
shmfs
/dev/shm tmpfs size=7g 0
控制文件
- 控制文件存放的内容
- 在哪个启动阶段使用控制文件
- 控制文件的类型(二进制)
- 控制文件在恢复时使用
- 如何保证控制文件可用?
- 备份控制文件
- rman(推荐)
- alter
database backup controlfile - 备份文本的控制文件(重建控制文件可以使用)
当数据库的物理结构改变后,请重新备份文本的控制文件
- 多路复用控制文件(不同磁盘)
实验案例:
- 增加控制文件(可能出现版本不一致)
- 当有多个控制文件时,其中一个控制文件丢失后的恢复
- 拷贝
- 减少
- 重创建控制文件
- 生成文本格式的控制文件
- 模拟所有的控制文件丢失
- 重建控制文件
日志文件
Database
Administration----
Administrator‘s Guide----12
Managing the Redo Log
- 日志文件存放的内容
- 日志切换
- 自动切换(日志满)
- 手动切换(alter
system switch logfile)
3、日志文件的副本,为什么要指定多个副本?
保证日志文件中数据的不丢失
4、对日志文件的规划策略
实验案例:
1、查看日志组的状态
unused表示日志组从末用过
current表示日志组正在使用
active表示日志组处于活动状态
inactive表示日志组处于非活动状态
- 创建日志组
- 删除日志组(日志文件没有删除,需要手动使用rm删除)
当日志组的状态为current和active时,不能进行删除操作。
当数据库下只有二个组,不能删除其中一个日志组
- 添加日志成员
blank表示该日志成员处于正常状态
stale表示该日志成员处于许久末用状态(日志太大)
invalid表示日志成员处于无效状态(新增或损坏)
- 删除日志成员
- 重定位
- 日志丢失的恢复
- 其中一个日志成员丢失,不会影响数据库的正常打开,但有警告
解决方案:清空日志组(可以在mount状态下)
- 丢失的是非当前的日志组,数据库不能打开,出现错误
解决方案:清空日志组(可以在mount状态下)
- 丢失的是当前的日志组,数据库不能打开,出现错误
解决方案:
启动隐含参数_allow_resetlogs_corruption,该参数指定数据库在启动的时候跳过一致性检查
alter
system set "_allow_resetlogs_corruption"=true scope=spfile;
startup
mount;
recover
database until cancel;
auto
alter
database open resetlogs;
重新连接
ALTER
DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3
去掉该隐含参数
alter
system reset "_allow_resetlogs_corruption" scope =spfile
sid =‘*‘;
归档文件
- 什么是归档文件
- 归档文件作用
- Recover
a database - Update
a standby database - Get
information about the history of a database using the LogMiner
utility
- Recover
- 如何开启和关闭归档
archive
log list
startup
mount
alter
database archivelog;
alter
database noarchivelog;
- 默认的归档文件存放的位置
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/
- 归档的方式
自动和手动
alter
system switch logfile;
alter
system archive log current;
实验案例:
改变归档的位置,归档多个副本
alter
system set log_archive_dest_2=‘location=/home/oracle/backup/b‘
scope=spfile;
LOG_ARCHIVE_DEST
和LOG_ARCHIVE_DEST_n
or DB_RECOVERY_FILE_DEST是互斥的
开启和关闭闪回恢复区,主要修改以下二个参数
db_recovery_file_dest
db_recovery_file_dest_size