Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1051363
  • 博文数量: 171
  • 博客积分: 55
  • 博客等级: 民兵
  • 技术积分: 2077
  • 用 户 组: 普通用户
  • 注册时间: 2012-01-04 10:11
个人简介

pugna

文章分类

全部博文(171)

文章存档

2021年(4)

2020年(1)

2019年(4)

2018年(5)

2017年(7)

2016年(9)

2015年(36)

2014年(8)

2013年(96)

2012年(1)

分类: Oracle

2015-02-10 16:29:17

1.查看哪些归档日志没有传输到备用库

假设local归档目录的ID为1,remote的归档目录为2
SQL> SELECT LOCAL.THREAD#, LOCAL.SEQUENCE# FROM
(SELECT THREAD#, SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=1) LOCAL
WHERE LOCAL.SEQUENCE# NOT IN
(SELECT SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=2 AND
THREAD# = LOCAL.THREAD#);


2.添加、删除数据文件或表空间
    初始化参数STANDBY_FILE_MANAGEMENT可以控制是否自动将primary数据库增加删除表空间、数据文件的改动继承到standby库。主要分为以下两种情况:
a)如果该参数值设置为auto,则自动创建。
b)如果设置为manual,则需要手工复制新创建的数据文件到standby服务器。
注意:如果数据文件是从其它数据库复制而来(比如通过tts),则不管STANDBY_FILE_MANAGEMENT参数值如何设置,都必须同时复制到standby数据库,并注意要修改standby数据库的控制文件。


3.重命名数据文件(rename datafile)
如果primary数据库重命名了一个或多个数据文件,该项修改并不会自动 传播到standby数据库。因为此,如果想让standby和数据文件与 primary保持一致,必须DBA人工干预,无论STANDBY_FILE_MANAGEMENT设置为auto还是 manual。
示例如下:
  将重命名的数据文件所在表空间offline  --primary数据库操作
 SQL> alter tablespace testtbs offline; 


a. 手工将数据文件改名(操作系统) --primary数据库操作
  使用mv等os命令

b. 通过命令修改数据字典中的数据文件路径,并online表空间 --primary数据库操作
SQL> alter tablespace testtbs rename datafile
   “/sapdata/testtbs0dbf” to
   “/sapmirr/testtbsmirr0dbf”;

SQL> alter tablespace testtbs online;

c. 暂停redo应用,并shutdown   --standby数据库操作
SQL> alter database recover managed standby database cancel;
SQL> shutdown immediate

d. 手工将数据文件改名(操作系统)   --standby数据库操作
os命令
 
e. 重启standby,修改数据文件路径(数据字典)   --standby数据库操作
SQL> startup mount

SQL> alter tablespace testtbs rename datafile
   “/sapdata/testtbs0dbf” to
“/sapmirr/testtbsmirr0dbf”;

f. 重新启动redo应用
SQL> alter database recover managed standby database disconnect from session;

g. 切换日志   --primary数据库操作
SQL> alter system switch logfile;


4. 添加或删除Online redo logs
数据库调优时可能会涉及到调整primary库的日志文件大小或增加删除日 志组等操作,这种操作不会传播到standby数据库,也不会影响到 standby数据库的运行,但是如果不及时修改standby库的redo file,那么将来standby库切换成主库后有可能影响性能。例如,假设当前primary数据库拥有5组online redo文件,standby数据库拥有2组,当你执行 switch over之后,新的primary执行归档的频率会比standby高的多,因此,当你在primary数据库增加或移除 online redologs时,一定记的手工在standby数据库中创建相应的redo。这就是我们前面提到的standby redologs与online redologs之间的关系,即保证 standby redologs比online redologs要至少多一组。操作的过程同时使用MANAUL方式添加数据文件。但需要注意的就是在standby做操作前务必将 STANDBY_FILE_MANAGEMENT设置为MANUAL


5.设置主库的归档频率
如果要强制Primary一分种归档一次,那么设置Primary的初始化参数ARCHIVE_LAG_TARGET:
SQL> alter system set ARCHIVE_LAG_TARGET=60 scope=both;
阅读(1358) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~