配置DG物理备库

测试环境

 

linux centos5.5

oracle版本:10.2.0.1.0

主库:192.168.0.22   hostname:pri.localdomain

备库:192.168.0.24   hostname:std.localdomain

修改主备库hosts文件

主库添加如下内容:

192.168.0.24 std.localdomain std

192.168.0.22 pri.localdomain pri

备库添加如下内容:

192.168.0.22 pri.localdomain pri

192.168.0.24 std.localdomain std

 

安装软件并创建数据库(以下创建路径以及文件属主均为oracle)

在主库22和备库24上分别安装oracle软件,并在主库22上创建实例名为dg的数据库,并设置为归档模式。

创建归档目录mkdir /opt/oracledata/arch

设置归档路径

alter system set log_archive_dest_1= “LOCATION=/opt/oracledata/arch” scope=spfile;

mount状态:

SQL> ALTER DATABASE FORCE LOGGING;

SQL> SHUTDOWN IMMEDIATE;

SQL> STARTUP MOUNT;

SQL> ALTER DATABASE ARCHIVELOG;

SQL> ALTER DATABASE OPEN;

修改主库22 initdg.ora 文件

在文件后添加如下内容:

DB_UNIQUE_NAME=dg22

LOG_ARCHIVE_CONFIG='DG_CONFIG=(dg22,dg24)'

LOG_ARCHIVE_DEST_2=

 'SERVICE=dg24 LGWR ASYNC

  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)

  DB_UNIQUE_NAME=dg24'

LOG_ARCHIVE_DEST_STATE_1=ENABLE

LOG_ARCHIVE_DEST_STATE_2=ENABLE

FAL_SERVER=dg24

FAL_CLIENT=dg22

STANDBY_FILE_MANAGEMENT=AUTO

创建standby日志文件

Adding a Standby Redo Log File Group to a Specific Thread

SQL> ALTER DATABASE ADD STANDBY LOGFILE THREAD 5

  2> ('/oracle/dbs/log1c.rdo','/oracle/dbs/log2c.rdo') SIZE 500M;

 

Adding a Standby Redo Log File Group to a Specific Group Number

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 10

  2> ('/oracle/dbs/log1c.rdo','/oracle/dbs/log2c.rdo') SIZE 500M;

创建密码文件(dbca建库,不需要这步)

 
 

配置listener.oratnsnames.ora

$ORACLE_HOME/network/admin路径下配置

tnsnames.ora里面的service_name需要与initdg.ora(参数文件)中的DB_UNIQUE_NAME参数保持一致

启动监听lsnrctl start

配置完后,可以使用tnsping来判断是否配置正确

例主库上:tnsping dg22             tnsping dg24

  备库上:tnsping dg22             tnsping dg24                        

或启动主库到open状态

主库上:sqlplus system/oracle@dg22

备库上:sqlplus system/oracle@dg22

主库:

listener.ora

# listener.ora Network Configuration File: /opt/oracle/10g/network/admin/listener.ora

# Generated by Oracle configuration tools.

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = /opt/oracle/10g)

      (PROGRAM = extproc)

    )

  )

 

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = pri.localdomain)(PORT = 1521))

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

  )

 

 

tnsnames.ora

# tnsnames.ora Network Configuration File: /opt/oracle/10g/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

 

EXTPROC_CONNECTION_DATA =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

    (CONNECT_DATA =

      (SID = PLSExtProc)

      (PRESENTATION = RO)

    )

  )

 

 

dg24=

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.24)(PORT = 1521))

      (LOAD_BALANCE = on)       

    )

    (CONNECT_DATA =

      (SERVICE_NAME = dg24)   

      (FAILOVER_MODE =      

                 (TYPE = SELECT)

                 (METHOD = BASIC)

                 (RETRIES = 180)

                 (DELAY = 5)

       )

    )

  )

 

dg22=

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.22)(PORT = 1521))

      (LOAD_BALANCE = on)

    )

    (CONNECT_DATA =

      (SERVICE_NAME = dg22)

      (FAILOVER_MODE =

                 (TYPE = SELECT)

                 (METHOD = BASIC)

                 (RETRIES = 180)

                 (DELAY = 5)

       )

    )

  )

 

备库:

listener.ora

# listener.ora Network Configuration File: /opt/oracle/10g/network/admin/listener.ora

# Generated by Oracle configuration tools.

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = /opt/oracle/10g)

      (PROGRAM = extproc)

    )

  )

 

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = std.localdomain)(PORT = 1521))

    )

  )

 

tnsnames.ora

# tnsnames.ora Network Configuration File: /opt/oracle/10g/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

 

EXTPROC_CONNECTION_DATA =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

    (CONNECT_DATA =

      (SID = PLSExtProc)

      (PRESENTATION = RO)

    )

  )

 

 

dg24=

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.24)(PORT = 1521))

      (LOAD_BALANCE = on)       

    )

    (CONNECT_DATA =

      (SERVICE_NAME = dg24)   

      (FAILOVER_MODE =      

                 (TYPE = SELECT)

                 (METHOD = BASIC)

                 (RETRIES = 180)

                 (DELAY = 5)

       )

    )

  )

 

dg22=

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.22)(PORT = 1521))

      (LOAD_BALANCE = on)

    )

    (CONNECT_DATA =

      (SERVICE_NAME = dg22)

      (FAILOVER_MODE =

                 (TYPE = SELECT)

                 (METHOD = BASIC)

                 (RETRIES = 180)

                 (DELAY = 5)

       )

    )

  )

主库启动到mount状态

创建standby数据库控制文件

alter database create standby controlfile as '/opt/oracle/oradata/test.ctl';

 

重新创建spfile文件

create spfile from pfile=’ /opt/oracle/10g/dbs/initdg.ora’;

 

关闭数据库

 

创建standby数据库(oracle用户下)

需要将主库上创建的initdg.orastandby的控制文件、密码文件orapwdg和数据文件传输到备库上去

 

在主库上:

       initdg.orastandby的控制文件和密码文件orapwdg拷贝到admin目录下

       cd $ORACLE_BASE

       scp –r admin oradata std.localdomain:/opt/oracle

       输入oracle用户密码即可

 

       将归档文件传输过去

       cd /opt/oracledata

       scp –r arch std.localdomain:/opt/oracledata

 

配置standby数据库

将从主库拷贝到相应的路径下

修改initdg.ora文件

DB_UNIQUE_NAME=dg24

LOG_ARCHIVE_CONFIG='DG_CONFIG=(dg22,dg24)'

LOG_ARCHIVE_DEST_2=

 'SERVICE=dg22 LGWR ASYNC

  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)

  DB_UNIQUE_NAME=dg22'

 

LOG_ARCHIVE_DEST_STATE_1=ENABLE

LOG_ARCHIVE_DEST_STATE_2=ENABLE

FAL_SERVER=dg22

FAL_CLIENT=dg24

STANDBY_FILE_MANAGEMENT=AUTO

 

启动主库到open状态

备库启动到mount状态

执行alter database recover managed standby database disconnect from session;命令使备库同步数据

测试是否配置成功

ora_mrp0_dglog进程负责同步standby数据

在主库建一张表并插入一条数据,手动归档,过一会儿(5-10分钟,和DG性能模式有关),把从库关掉,启动并查看表和数据是否同步,这是最直接的方式。

 

 

 

OK,DG物理备库到这里就配置完成了!001.gif

 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26543945/viewspace-748245/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26543945/viewspace-748245/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值