ORACLE之搭建DG(RMAN Duplicate方式)

目录(?)[+]

1.准备工作

        首先得准备两个能够PING通,并且装了Oracle软件且已经建库的Linux虚拟机。操作系统不限,至少有一个虚拟机已经建好库,最好两个都建好相同SID的库,这样少很多创建目录的麻烦,这里库的SID都是orcl,Linux严格区分大小写,所以SID的大小写得注意。

        我这里有两个名为PD和ST的Linux虚拟机。

        PD:192.168.56.42(主库)

        ST:192.168.56.43(备库)

2.在主库做一些操作

    2.1强制force logging

  1. SQL> shutdown immediate  
  2. Database closed.  
  3. Database dismounted.  
  4. ORACLE instance shut down.  
  5. SQL> startup mount  
  6. ORACLE instance started.  
  7.   
  8.   
  9. Total System Global Area 1653518336 bytes  
  10. Fixed Size          2253784 bytes  
  11. Variable Size        1006636072 bytes  
  12. Database Buffers      637534208 bytes  
  13. Redo Buffers            7094272 bytes  
  14. Database mounted.  
  15. SQL> alter database force logging;    --修改数据库为强制记日志,这是必须的操作,主库的每一步操作都得记录到日志中去。  
  16.   
  17. Database altered.  

    2.2开启主库的归档模式

  1. SQL> alter database archivelog;       --修改数据库为归档模式,因为dg是通过传送归档日志到备库然后应用来保证主备库一致的。  
  2.   
  3. Database altered.  

    2.3创建standby redo log

  1. SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo04.log'size 50M;   
  2. Database altered.  
  3.   
  4. SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 ('/u01/app/oracle/oradata/orcl/redo05.log'size 50M;   
  5. Database altered.  
  6.   
  7. SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 ('/u01/app/oracle/oradata/orcl/redo06.log'size 50M;   
  8. Database altered.  
  9.   
  10. SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 ('/u01/app/oracle/oradata/orcl/redo07.log'size 50M;  
  11.   
  12. Database altered.  
  1. SQL> select group#,type,member from v$logfile;  
  2.   
  3.   
  4.     GROUP# TYPE    MEMBER  
  5. ---------- ------- --------------------------------------------------  
  6.          3 ONLINE  /u01/app/oracle/oradata/orcl/redo03.log  
  7.          2 ONLINE  /u01/app/oracle/oradata/orcl/redo02.log  
  8.          1 ONLINE  /u01/app/oracle/oradata/orcl/redo01.log  
  9.          4 STANDBY  /u01/app/oracle/oradata/orcl/redo04.log  
  10.          5 STANDBY  /u01/app/oracle/oradata/orcl/redo05.log  
  11.          6 STANDBY  /u01/app/oracle/oradata/orcl/redo06.log  
  12.          7 STANDBY  /u01/app/oracle/oradata/orcl/redo07.log  

    2.4创建pfile

  1. SQL> create pfile from spfile;--这里创建pfile是为了做一些主库参数的配置,并且还得拷贝到备库再次修改成备库的配置。  
  2.   
  3. File created.  
  4.   
  5. SQL> shutdown immediate  
  6. Database closed.  
  7. Database dismounted.  
  8. ORACLE instance shut down.  

    2.5创建主库归档目录

  1. [oracle@PD orcl]$ mkdir archivelog  --建立这个目录是为了存放主库的归档日志文件,并且这个目录会和其他数据文件等等一起拷贝到备库。  
  2. [oracle@PD orcl]$ cd archivelog/  
  3. [oracle@PD archivelog]$ ls  
  4. [oracle@PD archivelog]$ pwd  
  5. /u01/app/oracle/oradata/orcl/archivelog  

    2.6在主备库同时创建静态监听listener和tnsname

建议用net manager建立

主库orcl_pd:192.168.56.42

  1. [oracle@PD admin]$ cat listener.ora   
  2. # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora  
  3. # Generated by Oracle configuration tools.  
  4.   
  5. SID_LIST_LISTENER =  
  6.   (SID_LIST =  
  7.     (SID_DESC =  
  8.       (GLOBAL_DBNAME = orcl)  
  9.       (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)  
  10.       (SID_NAME = orcl)  
  11.     )  
  12.   )  
  13.   
  14. LISTENER =  
  15.   (DESCRIPTION_LIST =  
  16.     (DESCRIPTION =  
  17.       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))  
  18.     )  
  19.     (DESCRIPTION =  
  20.       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))  
  21.     )  
  22.   )  
  23.   
  24. ADR_BASE_LISTENER = /u01/app/oracle  
  1. [oracle@PD admin]$ cat tnsnames.ora   
  2. # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora  
  3. # Generated by Oracle configuration tools.  
  4.   
  5. ORCL_ST =  
  6.   (DESCRIPTION =  
  7.     (ADDRESS_LIST =  
  8.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.43)(PORT = 1521))  
  9.     )  
  10.     (CONNECT_DATA =  
  11.       (SERVICE_NAME = orcl)  
  12.     )  
  13.   )  
  14.   
  15. ORCL =  
  16.   (DESCRIPTION =  
  17.     (ADDRESS_LIST =  
  18.       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))  
  19.     )  
  20.     (CONNECT_DATA =  
  21.       (SERVER = DEDICATED)  
  22.       (SERVICE_NAME = orcl)  
  23.     )  
  24.   )  
  25.   
  26. ORCL_PD =  
  27.   (DESCRIPTION =  
  28.     (ADDRESS_LIST =  
  29.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.42)(PORT = 1521))  
  30.     )  
  31.     (CONNECT_DATA =  
  32.       (SERVICE_NAME = orcl)  
  33.     )  
  34.   )  
  1. [oracle@PD orcl]$ lsnrctl  
  2.   
  3. LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 21-MAR-2016 00:59:09  
  4.   
  5. Copyright (c) 1991, 2013, Oracle.  All rights reserved.  
  6.   
  7. Welcome to LSNRCTL, type "help" for information.  
  8.   
  9. LSNRCTL> status  
  10. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))  
  11. TNS-12541: TNS:no listener  
  12.  TNS-12560: TNS:protocol adapter error  
  13.   TNS-00511: No listener  
  14.    Linux Error: 111: Connection refused  
  15. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))  
  16. TNS-12541: TNS:no listener  
  17.  TNS-12560: TNS:protocol adapter error  
  18.   TNS-00511: No listener  
  19.    Linux Error: 111: Connection refused  
  20. LSNRCTL> start  
  21. Starting /u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...  
  22.   
  23. TNSLSNR for Linux: Version 11.2.0.4.0 - Production  
  24. System parameter file is /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora  
  25. Log messages written to /u01/app/oracle/diag/tnslsnr/PD/listener/alert/log.xml  
  26. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))  
  27. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=PD)(PORT=1521)))  
  28.   
  29.   
  30. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))  
  31. STATUS of the LISTENER  
  32. ------------------------  
  33. Alias                     LISTENER  
  34. Version                    TNSLSNR for Linux: Version 11.2.0.4.0 - Production  
  35. Start Date                  21-MAR-2016 00:59:16  
  36. Uptime                    0 days 0 hr. 0 min. 0 sec  
  37. Trace Level                  off  
  38. Security                   ONLocal OS Authentication  
  39. SNMP                      OFF  
  40. Listener Parameter File   /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora  
  41. Listener Log File         /u01/app/oracle/diag/tnslsnr/PD/listener/alert/log.xml  
  42. Listening Endpoints Summary...  
  43.   (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))  
  44.   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=PD)(PORT=1521)))  
  45. Services Summary...  
  46. Service "orcl" has 1 instance(s).  
  47.   Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...  
  48. The command completed successfully  
  49. LSNRCTL> exit  

备库orcl_pd:192.168.56.43

[sq
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值