永发信息网

oracle11g dataguard参数修改主要以什么来定义主备库

答案:2  悬赏:10  手机版
解决时间 2021-01-26 20:29
oracle11g dataguard参数修改主要以什么来定义主备库
最佳答案
1 说明
基于网上的文档做了补充说明改动形成的文档。
2 判断DataGuard是否安装
select * from v$option where parameter = 'Oracle Data Guard';
3 网络配置
192.168.1.110---------------------------主库-------------实例名----ora11g(ora11g_PD)
192.168.1.111---------------------------备库-------------实例名----ora11g(ora11g_ST)
192.168.1.112---------------------------备库-------------实例名----ora11g(ora11g_SD)
4 监听配置
主库
[oracle@node1~]$ cd /ora11g/oracle/product/11.2.0/db_1/network/admin
[oracle@node1]$ cat listener.ora

# listener.ora Network Configuration File:/ora11g/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL =TCP)(HOST = node1)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY= EXTPROC1521))
)
)

ADR_BASE_LISTENER = /ora11g/oracle
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ora11g)
(ORACLE_HOME =/ora11g/oracle/product/11.2.0/db_1)
(SID_NAME = ora11g)
)
)
[oracle@node1]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File:/ora11g/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

ORA11G_PD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST= 192.168.1.110)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ora11g)
)
)

ORA11G_ST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST = 192.168.1.111)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

ORA11G_SD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST = 192.168.1.112)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

备库1
[oracle@node2]$ cat listener.ora

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL =TCP)(HOST = node2)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY= EXTPROC1521))
)
)

ADR_BASE_LISTENER = /ora11g/oracle

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ora11g)
(ORACLE_HOME = /ora11g/oracle/product/11.2.0/db_1)
(SID_NAME = ora11g)
)
)
[oracle@node2]$ cat tnsnames.ora

ORA11G_PD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST = 192.168.1.110)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

ORA11G_ST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST =192.168.1.111)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

ORA11G_SD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST =192.168.1.112)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

备库2
[oracle@node3]$ cat listener.ora

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL =TCP)(HOST = node3)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY= EXTPROC1521))
)
)

ADR_BASE_LISTENER = /ora11g/oracle

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ora11g)
(ORACLE_HOME = /ora11g/oracle/product/11.2.0/db_1)
(SID_NAME = ora11g)
)
)
[oracle@node3]$ cat tnsnames.ora

ORA11G_PD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST = 192.168.1.110)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

ORA11G_ST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST =192.168.1.111)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

ORA11G_SD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =TCP)(HOST =192.168.1.112)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g)
)
)

5 主库前期准备
设置强制写日志
SQL> select FORCE_LOGGING from v$database;
NO
SQL> alter database force logging;
SQL> select FORCE_LOGGING from v$database;
YES
6 创建口令文件
orapwd file=$ORACLE_HOME/dbs/orapwora11g password=test entries=5
7 修改主库初始化参数
创建主库pfile
sql > create pfile from spfile;
修改pfile
DB_UNIQUE_NAME='ORA11G_PD'
LOG_ARCHIVE_CONFIG='DG_CONFIG=(ORA11G_PD,ORA11G_ST,ORA11G_SD)'
LOG_ARCHIVE_DEST_1= 'LOCATION=/ora11g/oracle/archiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=ORA11G_PD'
LOG_ARCHIVE_DEST_2= 'SERVICE=ORA11G_ST LGWR SYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ORA11G_ST'
LOG_ARCHIVE_DEST_3= 'SERVICE=ORA11G_SD LGWR SYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ORA11G_SD'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_DEST_STATE_3=ENABLE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
FAL_SERVER='ora11g_st,ora11g_sd'
FAL_CLIENT='ora11g_pd'
STANDBY_FILE_MANAGEMENT=AUTO
Pfile 拷贝到备库1、2上
[node1]$scp -rp /ora11g/oracle/product/11.2.0/db_1/dbs/initorcl.oranode2:/ora11g/oracle/product/11.2.0/db_1/dbs/
[node1]$scp -rp /ora11g/oracle/product/11.2.0/db_1/dbs/initorcl.oranode2:/ora11g/oracle/product/11.2.0/db_1/dbs/

8 修改数据库运行在归档模式下
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
9 创建备份库需要的控制文件
创建控制文件
Shutdown immediate
STARTUP MOUNT;
ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/ora11g/oracle/ora11g01.ctl';
ALTER DATABASE OPEN;
创建主库spfile
Shutdown immediate
startuppfile='/ora11g/oracle/oracle/product/11.2.0/db_1/dbs/initora11g.ora'
sql>create spfile from pfile='/ora11g/oracle/product/11.2.0/db_1/dbs/initora11g.ora'
;
(先把原来的干掉)
shutdown immediate;
startup

10 备份生产数据库
scp -rp /ora11g/oracle/oradata/ORA11G node2:/u01/oradata/
scp -rp /ora11g/oracle/admin/ORA11G node2:/ora11g/oracle/admin(记得在备库1、2创建admin)
11 修改备库1的pfile

DB_UNIQUE_NAME='ORA11G_ST'
LOG_ARCHIVE_CONFIG='DG_CONFIG=(ORA11G_PD,ORA11G_ST)'
LOG_ARCHIVE_DEST_1= 'LOCATION=/ora11g/oracle/archiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=ORA11G_ST'
LOG_ARCHIVE_DEST_2= 'SERVICE=ORA11G_PD LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAME=ORA11G_PD'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
FAL_SERVER=ORA11G_PD
FAL_CLIENT=ORA11G_ST
STANDBY_FILE_MANAGEMENT=AUTO

12 修改备库2的pfile
DB_UNIQUE_NAME='ORA11G_SD'
LOG_ARCHIVE_CONFIG='DG_CONFIG=(ORA11G_PD,ORA11G_SD)'
LOG_ARCHIVE_DEST_1= 'LOCATION=/ora11g/oracle/archiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=ORA11G_SD'
LOG_ARCHIVE_DEST_2= 'SERVICE=ORA11G_PD LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAME=ORA11G_PD'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
FAL_SERVER=ORA11G_PD
FAL_CLIENT=ORA11G_SD
STANDBY_FILE_MANAGEMENT=AUTO
13 将控制文件拷贝到备库1、2
[node1]$scp -rp /ora11g/oracle/ora11g01.ctlnode2:/ora11g/oracle/oradata/ORA11G/
[node1]$scp -rp /ora11g/oracle/ora11g01.ctlnode2:/ora11g/oracle/fast_recovery_area/orcl/controlfile/

[node1]$scp –rp /ora11g/oracle/ora11g01.ctl node3:/ora11g/oracle/oradata/ORA11G/
[node1]$scp -rp /ora11g/oracle/ora11g01.ctlnode3:/ora11g/oracle/fast_recovery_area/orcl/controlfile/

14 在备库1、2上创建口令文件
orapwd file=$ORACLE_HOME/dbs/orapwora11g password=oracle entries=5
15 在备库1、2上创建spfile
SQL>Shutdown immediate;
SQL>startup;
SQL>pfile='/ora11g/oracle/oracle/product/11.2.0/db_1/dbs/initora11g.ora';
SQL>CREATE SPFILE FROM PFILE;
16 启动物理备用数据库1、2
STARTUPMOUNT;
17 配置Standby Redo Log
在主备库两边都配置standby redo log
在主库查看日志组的数量和每个日志文件的大小
SQL> SELECt GROUP#, BYTES FROM V$LOG;
在备库库查看日志组的数量和每个日志文件的大小
SQL> SELECt GROUP#, BYTES FROM V$STANDBY_LOG;
创建日志组和redo log文件
SQL> alter database add standby logfile
group 4 ('/ora11g/oracle/oracle/oradata/highfly/stdby_redo04.log') size50m,
group 5 ('/ora11g/oracle/oracle/oradata/highfly/stdby_redo05.log')size 50m,
group 6 ('/ora11g/oracle/oracle/oradata/highfly/stdby_redo06.log')size 50m,
group 7 ('/ora11g/oracle/oracle/oradata/highfly/stdby_redo07.log') size50m;
18 Start Redo Apply
在备库
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USINGCURRENT LOGFILE DISCONNECT FROM SESSION;
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL>alter user scott account lock;
查看哪些归档日志被APPLY了
在备库
SQL>SELECt SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
在主库强制日志切换到当前的online redo log file.
SQL>ALTER SYSTEM ARCHIVE LOG CURRENT;
在备库查看新的被归档的redo data
SQL>SELECt SEQUENCE#, FIRST_TIME, NEXT_TIME FROMV$ARCHIVED_LOG ORDER BY SEQUENCE#;
在备库查看接收到的被应用的redo
SQL> SELECt SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BYSEQUENCE#;
查看数据库的角色
SQL>select database_role,protection_mode,protection_levelfrom v$database;
19 主备库切换

1.查看主库的状态
SQL> SELECtSWITCHOVER_STATUS FROM V$DATABASE;
2.将主库切换至备用模式

SQL> ALTERDATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH -
> SESSION SHUTDOWN;

3.关闭、装载主数据库
SQL> SHUTDOWNABORT;
SQL> STARTUP MOUNT;
4.查看备库准备向主库模式切换
SQL> SELECt SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
-----------------
TO_PRIMARY
1 row selected
5.切换备库至主库模式
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSIONSHUTDOWN;

6.打开新的主数据库

SQL> ALTER DATABASEOPEN;

7. 在新的备库服务器上启动 REDO apply。
SQL> ALTER DATABASE RECOVER MANAGED STANDBYDATABASE USING CURRENT LOGFILE -
> DISCONNECT FROMSESSION;

20 灾难恢复(failover)

Step 1
Flushany unsent redo from the primary database to the target standby
database

SQL> ALTER SYSTEMFLUSH REDO TO target_db_name;

Step 2
Verify that the standby database has the mostrecently archived redo log
filefor each primary database redo thread.

SQL>SELECt UNIQUE THREAD# AS THREAD, MAX(SEQUENCE#) -
> OVER (PARTITION BYthread#) AS LAST from V$ARCHIVED_LOG;

SQL> ALTER DATABASEREGISTER PHYSICAL LOGFILE 'filespec1';

Step 3
Identifyand resolve any archived redo log gaps.

SQL> SELECt THREAD#,LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;

SQL> ALTER DATABASEREGISTER PHYSICAL LOGFILE 'filespec1';

Step 4
RepeatStep 3 until all gaps are resolved.

Step 5
StopRedo Apply.
Issuethe following SQL statement on the target standby database:
SQL> ALTER DATABASERECOVER MANAGED STANDBY DATABASE CANCEL;

Step 6
Finishapplying all received redo data.
Issuethe following SQL statement on the target standby database:
SQL> ALTER DATABASERECOVER MANAGED STANDBY DATABASE FINISH;

Step 7
Verifythat the target standby database is ready to become a primary
database.
全部回答
rac能够让多个节点同时对外提供服务,能够更好的利用系统资源的同时,任何一个节点出现故障,都能够实时的切换,保证服务不受任何影响 date guard可以保证数据迁移时的一致性,能够避免数据迁移时的风险
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
在金属活动性顺序表中,R元素排在锌前面,它
当皮肤某处划破流血时,能聚集到伤口部位进行
三层书架书怎么放才能更美观?
成语无补于事的意思是什么啊?有知道释义的请
世界上真的有天使的存在吗?
脊髓的主要功能是 A使人形成感觉 B.传导神经
6和走势图———魔兽世界搞破坏任务
林阳寺的交通信息
上游水库(高安)地址好找么,我有些事要过去
鑫淼玻璃体验馆地址在哪,我要去那里办事
余熊村鱼塘地址在什么地方,我要处理点事
怎样把一张图片里的前景部分去掉,只要背景?
这个极限是怎么算出来的?
白酒瓶盖上的二十四位物流码怎么上扫描辩真伪
余罪3还出不出?
推荐资讯
敬意万通广告地址有知道的么?有点事想过去
丰田佳美用普通锁匙能启动吗
成语悬梁刺股的意思是什么啊?有知道释义的请
宝鸡思百客餐饮服务有限公司怎么样?
去看望胃穿孔的病人送什么东西好?如果是花,
药物和血浆蛋白结合的特点有A.结合型与游离型
魅丽经典工作室地址在什么地方,想过去办事
武汉武昌区友谊国际广场到汉口机场坐地铁多长
免费师范生好吗? 对过了二本线30分的学生来
泰山书法研究院书法培训中心地址在哪,我要去
江西万载鹏程驾校现在报名多少钱?
1987年属兔的适合养富贵竹吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?