查询oracle数据库adg的模式,Oracle11g ADG配置
一:注意事项
1:
目录不同
db_file_name_convert=('/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/oradu/')
log_file_name_convert=('/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/oradu/')
必须设置
2:
创建密码文件,必须保持target DB和auxiliary DB的密码一致。这里我直接对target DB密码文件重命名使用
[root@oracledba dbs]# cp orapworcl orapworadu
3:
开始复制,复制时需要注意是否使用nofilenamecheck参数,如果两个实例相关数据目录结构完全相同,则需要指定,否则会报错。这里不需要使用。复制日志太多,有兴趣的可以看看,或者
跳过直接看结果!
[oracle@oracledba ~]$ export ORACLE_SID=oradu --------异机操作可省略此步操作
[oracle@oracledba ~]$rman target sys/oracle@orcl auxiliary sys/oracle@oradu
duplicate target database to oradu from active database;
如果目录相同:
duplicate target database to oradu from active database nofilenamecheck;
4:
alter database open read only;
5:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
6:特别注意:在修改主库参数时必须创建pfile
create pfile='/home/oracle/init.ora' from spfile;
二:ADG配置
1、确定数据库是否为归档模式
On primarydb:
select log_mode from v$database;
archive log list;
2、开启强制日志模式
On primarydb:
select FORCE_LOGGING from v$database;
ALTER DATABASE FORCE LOGGING;
3、验证是否有密码文件(HA备库也验证)
On primarydb:
cd $ORACLE_HOME/dbs
ls orap*
4、添加standby redo
On primarydb:
确认redo 大小和路径
set linesize 200
col member for a55
select a.group#,a.thread#,b.type,a.bytes/1024/1024 mb ,b.member from v$log a ,v$logfile b where a.group#=b.group#;
select a.group#,a.thread#,b.type,a.bytes/1024/1024 mb ,b.member from v$standby_log a ,v$logfile b where a.group#=b.group#;
alter database add standby logfile thread 1 group 11 '/oradata/PROD/redo11.log' size 1000M;
alter database add standby logfile thread 1 group 12 '/oradata/PROD/redo12.log' size 1000M;
alter database add standby logfile thread 1 group 13 '/oradata/PROD/redo13.log' size 1000M;
alter database add standby logfile thread 1 group 14 '/oradata/PROD/redo14.log' size 1000M;
alter database add standby logfile thread 1 group 15 '/oradata/PROD/redo15.log' size 1000M;
alter database add standby logfile thread 2 group 16 '/oradata/PROD/redo16.log' size 1000M;
alter database add standby logfile thread 2 group 17 '/oradata/PROD/redo17.log' size 1000M;
alter database add standby logfile thread 2 group 18 '/oradata/PROD/redo18.log' size 1000M;
alter database add standby logfile thread 2 group 19 '/oradata/PROD/redo19.log' size 1000M;
alter database add standby logfile thread 2 group 20 '/oradata/PROD/redo20.log' size 1000M;
/oradata/PROD/
5、修改主库参数
On primarydb:
alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(PROD,PRODDG)';
alter system set LOG_ARCHIVE_DEST_1='LOCATION=+FRADG/PROD/archive VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=PROD';
alter system set LOG_ARCHIVE_DEST_3='SERVICE=PRODDG LGWR ASYNC NOAFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PRODDG';
alter system set fal_server='PRODDG';
alter system set standby_file_management=AUTO scope=both;
下列2个参数需要下次重启后生效
alter system set DB_FILE_NAME_CONVERT='/oradata/PROD/','+DATADG/PROD/data/' scope=spfile;
alter system set LOG_FILE_NAME_CONVERT='/oradata/PROD/','+DATADG/PROD/data/' scope=spfile;
7、创建备库静态监听文件
On Standbydb:
cd /u01/app/oracle/product/11.2.0/dbhome_1/network/admin
vi listener.ora
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST= 10.18.0.210)(PORT=1521))
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=PRODDG)
(SID_NAME= PRODDG)
(ORACLE_HOME= /u01/app/oracle/product/11.2.0/dbhome_1)
)
)
8、启动备库监听
On Standbydb:
lsnrctl start
9、修改主、备库的TNSNAMES文件(主库另外一节点也要复制)
PROD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.18.0.83)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = PROD)
)
)
PRODDG =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.18.0.210)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = PRODDG)
)
)
11、tnsping测试,确保都能通
主库:(主库另外一节点也要测试)
On Primarydb:
tnsping PROD
tnsping PRODDG
备库:
On Standbydb:
tnsping PROD
tnsping PRODDG
12、创建备库密码文件
从主库中scp 密码文件备库,sys密码不能有下划线
On Primarydb:
cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs
scp orapwPROD1 10.18.0.210:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapwPRODDG
13、为备库创建初始化参数文件
On Primarydb:
create pfile= '/tmp/p.ora' from spfile;
scp /tmp/p.ora 10.18.0.210:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/
修改参数文件
On Standbydb:
cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/
*.db_unique_name='PRODDG'
*.fal_server='PROD'
*.log_archive_dest_1='location=/arch/PROD VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=PRODDG'
*.log_archive_dest_3='service=PROD lgwr async noaffirm valid_for=(online_logfiles,primary_role) db_unique_name=PROD'
*.db_create_file_dest='/oradata'
*.db_file_name_convert='+DATADG/PROD/','/oradata/PROD/'
*.log_file_name_convert='+DATADG/PROD/','/oradata/PROD/'
*.control_files='/oradata/PROD/controlfile/ctrol01.ctl','/oradata/PROD/controlfile/ctrol02.ctl'
#*.cluster_database=true
#testdb2.thread=2
#testdb1.thread=1
#testdb1.instance_number=1
#testdb2.instance_number=2
#*.remote_listener='testcluster:1521'
*.undo_tablespace='UNDOTBS1'
#testdb2.undo_tablespace='UNDOTBS2'
检查文件目录权限
/oradata
/arch
chown -R oracle:oinstall /oradata
chown -R oracle:oinstall /arch
14、创建备库相应目录
On Standbydb:
su - oracle
mkdir -p /u01/app/oracle/admin/PROD/adump
mkdir -p /oradata/PROD/datafile
mkdir -p /oradata/PROD/tempfile
mkdir -p /oradata/PROD/onlinelog
mkdir -p /oradata/PROD/controlfile
mkdir -p /arch/PROD
15、为备库创建spfile
On Standbydb:
export ORACLE_SID=PRODDG
SQL> startup nomount pfile='/tmp/p.ora'
SQL> create spfile from pfile='/tmp/p.ora';
16、关闭重启
shutdown abort
startup nomount
SQL> show parameter name
SQL> show parameter log
17、连接至主数据库作为其目标数据库,以运行创建备用 ON STANDBY
On Primarydb:
sqlplus sys/oracle@PROD as sysdba
sqlplus sys/oracle@PRODDG as sysdba
On Standbydb:
sqlplus sys@PROD as sysdba
<<<
sqlplus sys@PRODDG as sysdba
<<<
18、配置dataguard备库
On Primarydb:
export ORACLE_SID=PROD1
sqlplus / as sysdba
show parameter name
exit
export ORACLE_SID=PROD1
rman target sys/oracle auxiliary sys/oracle@PRODDG nocatalog <
run {
allocate channel prmy1 type disk;
allocate channel prmy2 type disk;
allocate channel prmy3 type disk;
allocate channel prmy4 type disk;
allocate auxiliary channel stby type disk;
duplicate target database for standby from active database;
}
exit
EOF
19、只读模式打开数据库
备库:
alter database open;
20、应用实时日志
备库:
alter database recover managed standby database using current logfile disconnect from session;
alter database recover managed standby database disconnect from session;
21 ,check
#on standby
select * from v$archive_gap;
select process,client_process,sequence#,status from v$managed_standby;
select database_role,protection_mode,protection_level,open_mode from v$database;
set linsize 200
col value for a20
col name for a30
col time for a30
col time_computed for a20
select to_char(SYSDATE,'yyyymmdd hh24:mi:ss') CTIME,NAME,VALUE,DATUM_TIME from V$DATAGUARD_STATS WHERE NAME LIKE '%lag';
shutdown immediate;
startup
recover managed standby database using current logfile disconnect from session;
#on primary
create table adg_tst (id int);
insert into adg_tst values(1);
commit;
alter system switch logfile;
alter system archive log current;
#on standby
select * from adg_tst;
阅读(3095) | 评论(0) | 转发(0) |
查询oracle数据库adg的模式,Oracle11g ADG配置相关推荐
- java metadata 使用_java 查询oracle数据库所有表DatabaseMetaData的用法(详解)
一 . 得到这个对象的实例 Connection con ; con = DriverManager.getConnection(url,userName,password); DatabaseMet ...
- dbvisualizer查询mysql中文乱码_使用PLSQL Developer和DbVisualizer查询oracle数据库时出现乱码...
使用PLSQL Developer和DbVisualizer查询oracle数据库时,出现查询数据中文乱码情况. 查看了一下数据库编码格式 select * from v$nls_parameters ...
- python查询oracle数据库_python针对Oracle常见查询操作实例分析
本文实例讲述了python针对Oracle常见查询操作.分享给大家供大家参考,具体如下: 1.子查询(难): 当进行查询的时候,发现需要的数据信息不明确,需要先通过另一个查询得到, 此查询称为子查询: ...
- sql查询oracle数据,sql-server – 从SQL Server查询Oracle数据库
我有一个Oracle 11g XE数据库,我想将其转移到SQL Server Express 2005中. 起初我以为我只是在Oracle中生成表作为SQL,操纵数据格式,并在SQL Server中运 ...
- java访问oracle集群,JAVA查询Oracle数据库集群连接字符串
下载必备最新排行装机分类.游戏手机驱动源码LinuxMac小游戏.商城招聘百科知道软件盒子论坛3G版 本站搜索 新闻资讯 软件下载 当前位置: 网站首页 > 编程开发 > 编程语言 > ...
- oracle 查询当年数据_查询ORACLE数据库TOP SQL使用情况
使用BOOST和ORACLE::OCCI查询ORACLE数据库TOP SQL使用情况 /topsql.h#ifndef TOPSQL_H#define TOPSQL_H#include#include ...
- sqldbx mysql 乱码_使用PLSQL Developer和DbVisualizer、SQLDBx查询oracle数据库时出现乱码...
使用PLSQL Developer和DbVisualizer查询oracle数据库时,出现查询数据中文乱码情况. 查看了一下数据库编码格式 select * from v$nls_parameters ...
- oracle数据库怎么分组查询,oracle数据库之分组查询
本章内容和大家分享的是数据当中的分组查询.分组查询复杂一点的是建立在多张表的查询的基础之上,(我们在上一节课的学习中已经给大家分享了多表查询的使用技巧,大家可以自行访问:多表查询1 多表查询2)而在 ...
- linux查看mysql实例名_查询oracle数据库的数据库名、实例名、ORACLE_SID
查询oracle数据库的数据库名.实例名.ORACLE_SID 连接ORACLE 数据库 SQL> conn risenet/1@//192.168.130.99:1521/risenet 或 ...
最新文章
- ensp大型网络环境设计与实现_mongodb内核源码设计实现、性能优化、最佳运维系列-网络传输层模块源码实现三...
- mysql query日期_如何获取mysql中两个日期之间的日期列表select query
- 【Android 安全】DEX 加密 ( Java 工具开发 | 加密解密算法 API | 编译代理 Application 依赖库 | 解压依赖库 aar 文件 )
- 在WebStorm里配置watcher实现编辑less文件时自动生成.map和压缩后的.css文件
- 学籍管理系统系统流程图
- 如何修复在Microsoft Azure中“虚拟机防火墙打开,关闭RDP的连接端口”问题
- 理解CSRF(跨站请求伪造)
- 深度学习2.0-12.神经网络与全连接层之数据集的加载
- java 20 -1 递归的概述和案例
- 查询解析MySQL_mysql内部查询过程详解
- 利用gitee搭建pdf在线阅读功能
- WPS简历模板的图标怎么修改_新媒体运营-简历模板范文,【工作经历+项目经验+自我评价】怎么写?...
- Centos7通过oh-my-zsh安装powerlevel9k和powerlevel10k
- html制作论坛页面模板,Discuz3.3仿小米论坛风格整站模板制作教程——1、新建模板方案...
- kafka-如何保证消息的可靠性与一致性
- 大数据自学全套教程,免费分享,赶紧码起来!(纯干货系列)
- 怎么在mysql中编辑数据库_navicat怎么修改数据库名
- 物品冷启动问题解决办法
- libgdx 环境搭建
- C#多线程(二) -- ThreadStart
热门文章
- 解决重写父类的方法且不会影响继承的子类的问题
- 海量存储之十八–一致性和高可用专题
- 【深度学习】2个经典的练手CNN源码与MNIST数据集测试结果
- Hyperledger Fabric相关文件解析
- PCL点云库用Poisson网格化实现点云的表面重建
- Linux多线程同步的几种方式
- 编译原理学习笔记一(待续)
- 通过live555实现H264 RTSP直播
- 把Qt的界面文件(.ui文件)生成源文件(.h或.cpp)封装成链接库
- 从一亩三分地转——“有代码的地方,就有江湖 - 冯诺伊曼.金庸”