备份和恢复控制文件
alter database backup controlfile to '.ora'
host dir d:\app\显示出列表查看是否复制成功
控制文件备份到追踪文件
show paramter sql_trace
设置sql_trace 为true
alter system set sql_trace=true;
alter database backup controlfile to trace;
show parameter user_dump_dest;
看到控制文件位置,在orcl中找到alert_orcl.log查看最后的信息
----------------------------
控制文件恢复
1、部分控制文件损坏的情况:
重新复制文件并更改文件名字;重新建立目录并更改
2、控制文件全部丢失或损坏:
oracle情调在数据库结构发生变化后要进行控制文件的备份
有数据丢失情况
3、通过跟踪文件重建控制文件
recover database,打开数据库后创建看是表空间用于排序等等。
---------------------------
控制文件介绍
控制文件记录数据库的状态信息,如重做日志文件与数据文件的名字和位置,归档重做日志的历史等
扎起数据库启动的mount阶段读取,一个控制文件只能与一个数据库相关联,需要将控制文件放在不同的磁盘上,以防止控制文件的实效造成数据库无法启动,控制文件打下偶在create datebase语句时被初始化
select value from v$parameter where name ='control_files';
show parameter vontrol_files;
查看控制文件中存储的内容:
select type,record_size,records_total,records_used from v$control_record_section;
从控制文件中读取数据字典:
v$backup,database tempfile tablespace archive log logfile loghist archived_log
select name,created.log_mode from v$database;
多重控制文件
select status,name from v$controlfile;
移动控制文件:
使用spfile启动数据库时如何移动控制文件:
1、获取控制文件名
2、使用alter system set 指令修改spfile中的控制文件名
alter system set control_files=(
'd:/.ctl','d:/.ctl','d:/.ctl') scope=spfile;
3、关闭数据库
shutdown immediate
4、复制控制文件到迁移目录
host copy
5、重启数据库
startup
6、验证修改结果
select status,name from v$controlfile;
-----------------------------------
为何引入重做日志:
数据恢复
LGWR,DBWR
查看重做日志信息
select group#,sequence#,bytes,members,archived,status from v$log;
查看重做日志组信息
select group#,status,type,member from v$logfile;
archive log list;查看数据库的模式
数据库改为归档模式:
alter database archivelog;
添加重做日志组:
alter database add logfile group 4
('d:/.log','d:/.log') size 10m;
select * from v$logfile;
删除练级重做日志组:
alter database drop logfile group 4;