备份恢复11——表空间时间点恢复
2012-05-18 21:15
253 查看
1、用户管理的表空间时间点恢复
介绍几个概念:
恢复集(recovery set ):恢复集是指在主数据库上需要执行tspitr的表空间集合。注意,当在恢复集的表空间上执行tspitr时,要求这些表空间必须是自包含的。
辅助数据库(auxiliary database): 辅助数据库是主数据库的一个副本数据库。当执行tspitr时,辅助数据库用于将恢复集表空间恢复到过去的时间点。注意,辅助数据库的所有物理文件都是从主数据库备份中取得得,并且辅助数据库必须包含system表空间、undo表空间以及恢复集表空间的备份文件。
辅助集(auxiliary set )辅助集是指辅助数据库所需要的、除了恢复集表空间文件之外的其他文件集合。当执行tspitr时,辅助数据库除了需要恢复集表空间的备份文件之外,还需要备份控制文件,system表空间的备份文件,undo表空间的备份文件。
步骤:
1、检查恢复集表空间是否是自包含的。
具体方法参照以前的博客
2、检查是否存在恢复集表空间的数据文件备份。
通过查询主数据库的数据字典视图DBA_DATA_FILES,可以确定恢复集表空间所包含的数据文件。示例:
SQL> select file_name from dba_data_files where tablespace_name= 'user01';
在确定了恢复集表空间所包含的数据文件之后,读者应该确定该数据文件是否存在备份数据文件。注意,其备份文件必须是tspitr时间点之前的备份的数据文件。
3、检查是否存在辅助集的数据文件和控制文件备份。
通过查询主数据库的数据字典视图DBA_DATA_FILES 可以确定辅助集所包含的数据文件,通过查询动态性能视图v$controlfile 可以确定辅助集所包含的控制文件。示例如下:
SQL> select file_name from dba_data_files where tablespace_name in ('system' ,' undotbs1')
union
select max(name ) from v$controlfile;
如上所示,辅助集应该包含两个数据文件system01.dbf 和 undotbs01.dbf。 另外还应该包含一个或多个控制文件,在确定了辅助集所包含的数据文件和控制文件之后,应该确定是否存在一个相应的数据文件备份和控制文件备份。注意,他们的备份文件必须是在tspitr时间点之前的备份文件。
4、检查tspitr之后丢失的对象。
对于恢复集表空间的对象而言,当执行了tspitr之后,在恢复时间之后被建立的对象将会丢失,通过产销主数据库的数据字典视图TS_PITR_OBJECTS_TO_BE_DROPPED,可以确定在执行了tspitr之后被丢失的对象。示例如下:
SQL> select owner,name from ts_pitr_objects_to_be_dropped where tablespace_name = 'user01' and creation_time>to_date('2004-9-27 11:25:21 ' , 'yyyy-mm-dd hh24:mi:ss' );
如上所示,当执行了tspitr之后,会丢失scott.employee。如果改变必须被保留,则应该在执行tspitr之前,使用exp或expdp导出改变的数据结构和数据。执行完tspitr之后再用imp或impdp导入该表。
准备数据库:
1、准备user01表空间,user02表空间及示例表。
具体操作不写了。
2、备份主数据库的所有数据文件和控制文件。
当执行tspitr时,需要使用主数据库的备份文件建立辅助数据库。因此,在继续后面的准备工作以前。首先需要备份所有数据文件和控制文件。如果使用用户管理的表空间时间点恢复,则必须存在用户管理的数据库备份。
如果要使用rman管理的表空间时间点恢复,则必须使用rman备份所有数据文件和控制文件。示例:
RMAN >run {
backup database format= 'd:\backup\%d_%s.bak';
sql 'alter system archive log current ';
}
3、 在主数据库上执行dml,为示例表customers和sales增加数据。并多次手工切换日志。
接着显示现在时间,之后对sales表插入数据并提交。
3、实现用户管理的tspitr:
在10g中,通过结合辅助数据库、exp和imp。dba可以实现tspitr。具体步骤如下:
1、建立辅助实例的参数文件。当启动实例时,必须听欧冠呢相应的参数文件。同样,当启动辅助实例时,也必须提供辅助实例的参数文件,现在主数据库上使用cretate pfile 命令为辅助实例建立参数文件,然后手工编辑相应的初始化参数。
介绍几个概念:
恢复集(recovery set ):恢复集是指在主数据库上需要执行tspitr的表空间集合。注意,当在恢复集的表空间上执行tspitr时,要求这些表空间必须是自包含的。
辅助数据库(auxiliary database): 辅助数据库是主数据库的一个副本数据库。当执行tspitr时,辅助数据库用于将恢复集表空间恢复到过去的时间点。注意,辅助数据库的所有物理文件都是从主数据库备份中取得得,并且辅助数据库必须包含system表空间、undo表空间以及恢复集表空间的备份文件。
辅助集(auxiliary set )辅助集是指辅助数据库所需要的、除了恢复集表空间文件之外的其他文件集合。当执行tspitr时,辅助数据库除了需要恢复集表空间的备份文件之外,还需要备份控制文件,system表空间的备份文件,undo表空间的备份文件。
步骤:
1、检查恢复集表空间是否是自包含的。
具体方法参照以前的博客
2、检查是否存在恢复集表空间的数据文件备份。
通过查询主数据库的数据字典视图DBA_DATA_FILES,可以确定恢复集表空间所包含的数据文件。示例:
SQL> select file_name from dba_data_files where tablespace_name= 'user01';
在确定了恢复集表空间所包含的数据文件之后,读者应该确定该数据文件是否存在备份数据文件。注意,其备份文件必须是tspitr时间点之前的备份的数据文件。
3、检查是否存在辅助集的数据文件和控制文件备份。
通过查询主数据库的数据字典视图DBA_DATA_FILES 可以确定辅助集所包含的数据文件,通过查询动态性能视图v$controlfile 可以确定辅助集所包含的控制文件。示例如下:
SQL> select file_name from dba_data_files where tablespace_name in ('system' ,' undotbs1')
union
select max(name ) from v$controlfile;
如上所示,辅助集应该包含两个数据文件system01.dbf 和 undotbs01.dbf。 另外还应该包含一个或多个控制文件,在确定了辅助集所包含的数据文件和控制文件之后,应该确定是否存在一个相应的数据文件备份和控制文件备份。注意,他们的备份文件必须是在tspitr时间点之前的备份文件。
4、检查tspitr之后丢失的对象。
对于恢复集表空间的对象而言,当执行了tspitr之后,在恢复时间之后被建立的对象将会丢失,通过产销主数据库的数据字典视图TS_PITR_OBJECTS_TO_BE_DROPPED,可以确定在执行了tspitr之后被丢失的对象。示例如下:
SQL> select owner,name from ts_pitr_objects_to_be_dropped where tablespace_name = 'user01' and creation_time>to_date('2004-9-27 11:25:21 ' , 'yyyy-mm-dd hh24:mi:ss' );
如上所示,当执行了tspitr之后,会丢失scott.employee。如果改变必须被保留,则应该在执行tspitr之前,使用exp或expdp导出改变的数据结构和数据。执行完tspitr之后再用imp或impdp导入该表。
准备数据库:
1、准备user01表空间,user02表空间及示例表。
具体操作不写了。
2、备份主数据库的所有数据文件和控制文件。
当执行tspitr时,需要使用主数据库的备份文件建立辅助数据库。因此,在继续后面的准备工作以前。首先需要备份所有数据文件和控制文件。如果使用用户管理的表空间时间点恢复,则必须存在用户管理的数据库备份。
如果要使用rman管理的表空间时间点恢复,则必须使用rman备份所有数据文件和控制文件。示例:
RMAN >run {
backup database format= 'd:\backup\%d_%s.bak';
sql 'alter system archive log current ';
}
3、 在主数据库上执行dml,为示例表customers和sales增加数据。并多次手工切换日志。
接着显示现在时间,之后对sales表插入数据并提交。
3、实现用户管理的tspitr:
在10g中,通过结合辅助数据库、exp和imp。dba可以实现tspitr。具体步骤如下:
1、建立辅助实例的参数文件。当启动实例时,必须听欧冠呢相应的参数文件。同样,当启动辅助实例时,也必须提供辅助实例的参数文件,现在主数据库上使用cretate pfile 命令为辅助实例建立参数文件,然后手工编辑相应的初始化参数。
相关文章推荐
- 9.手工备份恢复--表空间时间点恢复(练习12.13.14)
- ArcSDE中空间数据的备份与恢复
- DB2使用在线备份和日志恢复到指定时间
- 实验表空间时间点恢复(TSPITR)
- NTP时间同步 、 tar备份与恢复 、 管理用户和组
- 表空间时间点恢复(TSPITR)简介
- Informix IDS 11琐细管理(918测验)认证指南,第6部分:IDS备份和恢复(8)
- rman备份恢复表空间&用户管理的表空间备份与恢复
- Oracle exp imp备份、恢复表空间数据步骤
- RMAN备份与恢复—将数据文件或表空间还原到新位置
- 测试mysqldump与mydumper各自备份与恢复所用的时间
- Oracle技术之手动实现表空间基于时间点的恢复
- 如何备份/恢复dreamhost空间里的mysql数据库
- Oracle备份恢复之无备份情况下恢复undo表空间
- mysql 开发进阶篇系列 43 逻辑备份与恢复(基于时间和位置的不完全恢复)
- Oracle 表空间时间点恢复 (TSPITR)
- 实验 表空间时间点恢复TSPITR(Tablespace Point In Time Recovery)
- ArcSDE 8.1中空间数据的备份与恢复
- ArcSDE 中空间数据的备份与恢复策略
- Oracle技术之使用rman进行表空间基于时间点的恢复