2013年(350)
分类: Oracle
2013-04-24 16:36:37
一、手把手的创建物理standby
1、创建(手工复制数据文件或通过RMAN) ---primary库操作
2、创建控制文件 --primary库操作
通过下列语句为standby数据库创建控制文件
SQL> alter database create standby controlfile as 'd:\backup\jsspdg01.ctl';
注意哟,控制文件通常需要有多份,你要么手工将上述文件复制几份,要么用命令多创建几个出来。另外,创建完控制文件之后到standby数据库创建完成这段时间内,要保证primary数据库不再有结构性的变化(比如增加表空间等等),不然primary和standby同步时会有问题。
3、创建初始化参数文件
l 创建客户端初始化参数文件
例如:
SQL> create pfile='d:\backup\initjsspdg.ora' from spfile;
l 修改初始化参数文件中的参数
根据实际情况修改吧,注意primary和standby不同角色的属性配置,注意文件路径。
4、复制文件到standby服务器
至少三部分:数据文件,控制文件,修改过的初始化参数文件,注意路径。
5、配置standby数据库
如果你看过三思之前"一步一步学rman"系列,看过"duplicate复制",或看过"传输表空间复制数据"系列,那么对于创建一个新的数据库应该非常熟悉了,下面再简单描述一下步骤:
1).创建新的OracleService(windows环境下需要)。
2).创建密码文件,注意保持密码与primary数据库一致。
3).配置监听并启动
4).修改primary和standby的tnsnames.ora,各自增加对应的Net Service Name。
5).创建服务器端的初始化文件
6、启动standby
注意哟,咱们前面说过的,物理standby极少情况下可以以read-write模式打开,某些情况下可以以read-only模式打开,所以默认情况下,加载到mount状态即可。
SQL> STARTUP MOUNT;
启动redo应用
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
启动实时应用
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
提示:disconnect from session子句并非必须,该子句用于指定启动完应用后自动退出到命令操作符前,如果不指定的话,当前session就会一直停留处理redo应用,如果想做其它操作,就只能新建一个连接。
7、停止standby
正常情况下,我们停止也应该是先停止redo应用,可以通过下列语句:
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CALCEL;
然后再停止standby数据库
SQL> SHUTDOWN IMMEDIATE;
当然你非要直接shutdown也没问题,dg本来就是用于的,别说你生停standby,就是直接拔电源也不怕。
基本步骤就是这样,下面我们进入实践环节....................