DataGurd(DG)这个是什么就无需在这里费周张了,自行百度。公司会经常用的哦。
文章参考:http://www.linuxidc.com/Linux/2015-03/115166.htm 这哥们的写的不错,放头头。
配置最大性能模式DG:
最大性能模式:
1、默认模式,提供主库的最高可用性能
2、保证主库在运行之中不会受到从库的干扰
优点:避免从库对主库的影响
缺点:不能保证数据不丢失(通过归档的方式,一直查一个arch,如果主库彻底没了,那么redo中的数据会丢失),最低的情况,丢失一个redo组
步骤如下
1.前期规划
2.配置网络监听
3.修改参数文件
4.rman duplicate 复制数据库
5.启动调试数据库
6.测试
1.规划
主库(1.1.1.11):
db_name orcl
db_unique_name orcl_pd
service_name orcl
instance_name orcl
本地归档路径 /home/oracle/orcl_arclog
tnsnames to_sd --配置去备库的tns
备库(1.1.1.10):
db_name orcl 数据库名要一样
db_unique_name orcl_sd 在一个dg环境里面,每一个成员的名字。
servicer_name vicdb
instance_name vicdb 实例名可以不一样
本地归档路径 /home/oracle/vicdb_arclog
tnsnames to_pd --配置去主库的tns
2.配置网络监听
基础配置,配置两边的oracle net,保证两边能互通(需要使用静态注册),这步不过下面的基本没戏。
位置:/oracle/app/db/network/admin。
主库上的listener配置
cat listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME =orcl)
(ORACLE_HOME = /oracle/app/db)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.1.11)(PORT = 1521))
)
ADR_BASE_LISTENER = /oracle/app
从库上的listener配置
cat listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = vicdb)
(ORACLE_HOME = /oracle/app/db)
(SID_NAME = vicdb)
)
)
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.1.10)(PORT = 1521))
)
ADR_BASE_LISTENER = /oracle/app
两边使用相同的tnsnames.ora
cat tnsnames.ora
to_sd =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.1.10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = vicdb)
)
)
to_pd &#