注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

常在心

淡泊明志,人生自在

 
 
 

日志

 
 

移动DG的数据文件(转)  

2011-03-28 12:46:41|  分类: Data Guard |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

今天遇到个问题,由于执行一个TSM脚本的时候,没注意到脚本中的语句会新建一个tablespace,而且新建的语句是

create tablespace tsm datafile 'tsm.dbf' size 100m autoextend off;
由于没有指定数据文件的绝对路径,所以默认就放在了$ORACLE_HOME/dbs路径下。

数据文件路径不统一,风险可大可小,如果是HA架构,数据文件不在共享存储上,切换的时候就会在备机起不来;如果在冷备的时候,如果没注意到这个文件,也会造成遗漏,做的冷备无法用于还原。

为了保持各个数据文件的存放路径统一,我们需要将该数据文件从dbs下mv到同一的数据文件的路径下。如果是单个库,就比较好处理,直接将tablespace offline之后在mv数据文件,再online上去即可。但是由于存在DG,我们对DG需要额外的处理一下。

我们可以按照下面的步骤处理:
主库:

1)--先将表空间offline
alter tablespace blade2_log offline;
 
--注意,该操作步骤是不会传递到standby的。
 
2)--移动数据文件
host mv /u02/blade2/blade2_log_01.dbf /u02/blade2log/blade2_log_01.dbf
 
3)--修改控制文件信息
alter database rename file '/u02/blade2/blade2_log_01.dbf' to '/u02/blade2log/blade2_log_01.dbf';
 
--注意,该修改操作也不会传递到备库的控制文件中。
 
4)--将表空间online
alter tablespace blade2_log online;

在主库操作完成后,我们再对standby库的文件进行处理:

在备库:

1)--先将数据库从recover managed状态置于mount状态:
alter database recover managed standby database cancel;
 
2)--移动数据文件
host mv /u02/blade2/blade2_log_01.dbf /u02/blade2log/blade2_log_01.dbf  
 
3)--更改standby_file_management:
alter system set standby_file_management=manual;
 
4)--更改控制文件信息:
alter database rename file '/u02/blade2/blade2_log_01.dbf' to '/u02/blade2log/blade2_log_01.dbf';
 
5)--还原standby_file_management:
alter system set standby_file_management=auto;

 
6)--最后,将数据库再次置于recover managed状态:
alter database recover managed standby database disconnect from session;


小提示:
1、如果没有将数据库从recover managed状态置于mount状态,在mv或者cp的时候会报错:

SQL> alter database rename file '/oracle/product/9.2.0/dbs/tbs2.dbf'
  2  to
  3  '/oracle/oradata/oradg/tbs2.dbf';
alter database rename file '/oracle/product/9.2.0/dbs/tbs2.dbf'
*
ERROR at line 1:
ORA-01156: recovery in progress may need access to files
 
 
SQL>
2、如果没有将standby_file_management状态置于manual状态,会报错:

SQL> alter database rename file '/oracle/product/9.2.0/dbs/tbs2.dbf'
  2  to
  3  '/oracle/oradata/oradg/tbs2.dbf';
alter database rename file '/oracle/product/9.2.0/dbs/tbs2.dbf'
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01275: Operation RENAME is not allowed if standby file management is
automatic.

  评论这张
 
阅读(305)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018