Oracle用户管理模式下的备份恢复
1、用户管理模式下的冷备份
1.1 查询数据库相关信息
查实例
select instance_name,version,status,archiver,database_status from v$instance;
查数据库
select dbid,name,log_mode from v$database;
查数据文件状态
select file_name,tablespace_name,status,online_status from dba_data_files;
查看数据文件
select name from v$datafile;
查看临时文件
select name from v$tempfile;
查看日志文件
select member from v$logfile;
查看控制文件
select name from v$controlfile;
1.2 关闭数据库,保持scn一致;
1.3 使用操作系统命令拷贝文件;
1.4 启动数据库。
1.5 冷备份优缺点
优点:操作简单,容易恢复到某个某个时间点,能结合归档使数据库恢复到最新状态。
缺点:必须一致性关闭数据库,只能恢复到某个时间点,备份数据慢,无法基于表和用户数据恢复。
2、用户管理模式下的热备份
数据库处于归档模式下
2.1 执行的步骤
冻结文件块头–>物理拷贝数据–>解冻文件块头
2.2 执行的过程
2.2.1 数据库级别的热备
alter database begin backup;
拷贝数据文件
alter database end backup;
2.2.2 表空间级别的热备
alter tablespace tablespace_name begin backup;
拷贝表空间的数据文件
alter tablespace tablespace_name end backup;
解析alter tablespace tablespace_name begin backup 时完成的任务有哪些
a、检查点事件发生,检查点通知 dbwn 将该表空间上所有的脏数据被写入到磁盘
b、在数据文件头部冻结当前检查点事件发生时的 scn 号
c、所有发生变化数据块的完整镜像(修改前后)被写入到 redo log 中
d、允许该表空间内数据的正常读写
2.2.3 控制文件热备
alter database backup controlfile to '<dir>' [reuse]; --控制文件的完整备份
alter database backup controlfile to trace as '<dir>' --用于创建控制文件的语句,丢失了部分信息
什么情况下控制文件发生变化情况
alter database [add |drop] logfile
alter database [add |drop] logfile member
alter database [add |drop] logfile group
alter database [archivelog |noarchivelog]
alter database rename file
create tablespace
alter tablespace [add | rename] datafile
alter tablespace [read write | read only]
drop tablespace
2.2.4 参数文件的热备
create pfile from spfile ;
create pfile = '<dir>' from spfile;
2.2.5 口令文件
orapwd file=$oracle_home/dbs/orapwd<sid> password=oracle entries=5;
3、用户模式下备份宕机和只读表空间问题如何处理
3.1 如果在表空间在备份模式下主机宕机
1、数据库置于mount状态
2、select * from v$backup;查看目前正在备份的文件
3、alter database end backup;可以关闭所有的备份,也可以指定某个文件alter datafile 4 end backup;
4、再次select * from v$backup;检查是否还有需要恢复的
5、打开数据库
3.2 只读表空间备份
1、把表空间设置只读,需要备份一下控制文件
2、只读表空间只需要备份一次
3、只读表空间改为读写表空间,要保存好归档
4、用户模式下备份的数据如何验证可用性
块检查工具
工具列表 坏块检查类型 能否修复坏块
dbverify 物理 否
db_block_checksum 物理 否
exp/expdp 物理 否
analyze 逻辑 否
db_block_checking 逻辑 否
flashback 逻辑 是
dbms_repair 逻辑 是
rman 未知 是
4.1 dbverify特点
1、仅仅针对数据文件,能够校验 open 阶段的数据文件以及 shutdown 状态下的数据文件
2、可以验证复制的数据文件,也可以验证备份的镜像副本
3、不支持联机日志文件,控制文件,归档日志,rman 备份集验证
4、被验证的文件可以位于文件系统,asm 磁盘或原始设备
5、高版本可以自动识别低版本数据库,但是低版本的 dbv 访问高版本会报错
4.2 dbverify语法
oracle@orcl ~]$ dbv
DBVERIFY: Release 19.0.0.0.0 - Production on Tue Nov 12 14:55:36 2024
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Keyword Description (Default)
----------------------------------------------------
FILE File to Verify (NONE)
START Start Block (First Block of File)
END End Block (Last Block of File)
BLOCKSIZE Logical Block Size (8192) #指定数据文件的尺寸,缺省值为 8192,对于非 8192 块将收到 dbv-00103 错误
LOGFILE Output Log (NONE) #用于显示验证进度
FEEDBACK Display Progress (0)
PARFILE Parameter File (NONE) #可以指定参数文件
USERID Username/Password (NONE) #校验段、asm 文件需要使用
SEGMENT_ID Segment ID (tsn.relfile.block) (NONE) #校验段,需要表空间 id,数据文件 id,段的头部 id
HIGH_SCN Highest Block SCN To Verify (NONE)
(scn_wrap.scn_base OR scn)
示例:
[oracle@orcl ~]$ dbv file=/u01/app/oracle/oradata/ORCL19C/users01.dbf
DBVERIFY: Release 19.0.0.0.0 - Production on Tue Nov 12 14:59:41 2024
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
DBVERIFY - Verification starting : FILE = /u01/app/oracle/oradata/ORCL19C/users01.dbf
DBVERIFY - Verification complete
Total Pages Examined : 640 #校验的总页面数,一个页面即是一个数据块
Total Pages Processed (Data) : 60 #已处理的数据页面数
Total Pages Failing (Data) : 0 #已处理数据页面的失败数
Total Pages Processed (Index): 15 #已处理的索引页面数
Total Pages Failing (Index): 0 #已处理索引页面失败数
Total Pages Processed (Other): 464 #已处理的其它页面数
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 101
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
Total Pages Encrypted : 0
Highest block SCN : 1252497 (0.1252497)
如果 total pages influx 的值大于零,且未存在坏块的情况下,是由于针对 open状态的文件运行 dbv
程序遇到了一个当前正在被 dbwn 进程写入的数据块
4.3 检查数据文件的块是否损坏
[oracle@orcl ~]$ dbv file=/u01/app/oracle/oradata/ORCL19C/system01.dbf feedback=100
DBVERIFY: Release 19.0.0.0.0 - Production on Tue Nov 12 15:10:40 2024
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
DBVERIFY - Verification starting : FILE = /u01/app/oracle/oradata
标签:管理模式,数据文件,database,备份,Pages,Oracle,Total,alter
From: https://blog.csdn.net/qq_15168159/article/details/143786360