首页 > 数据库 >Oracle dataguard 搭建 oracle 11g ADG

Oracle dataguard 搭建 oracle 11g ADG

时间:2024-08-22 23:26:35浏览次数:7  
标签:主库 11g db system ADG orcl orcls oracle alter

文章目录

一、系统环境检查

1、 --系统时间/时区 date

cat /etc/TIMEZONE

–Rhel 7.2特性,用户推出登录后清空缓存,RemoveIPC=yes会导致数据库宕机

cat >> /etc/systemd/logind.conf << "EOF"
RemoveIPC=no
EOF

2、–系统异步I/O检查:async
ls -l /sys/kernel/slab/|grep kio

3、–图形界面测试

4、–yum源

5、–multipath多路径
–重新扫描磁盘
[root@dzqddb2 multipath]# rescan-scsi-bus.sh
–多路径聚合
[root@dzqddb2 multipath]# systemctl status multipathd
[root@dzqddb2 multipath]# multipath -F
[root@dzqddb2 multipath]# multipath -v2
[root@dzqddb2 multipath]# multipath -ll

–查看HBA卡端口状态
[root@rpsdb1 ~]# cd /sys/class/fc_host/
[root@rpsdb1 fc_host]# cat ./host*/port_state

二、参数调整

11G_RAC参数调整

三、搭建ADG

主库:*.db_name=‘orcl’ .db_unique_name=‘orcl’
备库:
.db_name=‘orcl’ *.db_unique_name=‘orcls’

1、主库操作

1、主库开启归档模式,此步骤需要重启数据库

–1.关闭两个节点数据库,分别在两个节点操作:

alter system switch logfile;
alter system checkpoint;
shutdown immediate

–2.在一个节点启动数据库修改归档模式,只在一个节点操作:

startup mount
alter system set LOG_ARCHIVE_DEST_1='location=+DATADG01' scope=both sid='*';
alter database archivelog;
shutdown immediate
startup 

–3.启动两个节点数据库

--srvctl start database -db <db_unique_name>
srvctl start database -d orcl

–4.验证:

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +DATADG01
Oldest online log sequence     1779
Next log sequence to archive   1780
Current log sequence           1780
–5主库打开force logging
--1.打开force logging,只在一个节点执行
SQL> alter database force logging;

--2.验证:
SQL> select force_logging,flashback_on from gv$database;

FORCE_LOGGING                           FLASHBACK_ON

---

YES                                     NO

YES                                     NO

–6主库修改DG相关参数
#以下是动态参数,可以在线修改
#标色部分需要根据环境修改
--alter system set archive_lag_target = 0 scope=both sid='*';
--alter system set log_archive_max_processes = 4 scope=both sid='*';
--alter system set log_archive_min_succeed_dest = 1 scope=both sid='*';
--alter system set log_archive_trace = 0 scope=both sid='*';
#dg_config(主库,备库,备库,备库) 使用DB_UNIQUE_NAME 
alter system set log_archive_config='dg_config=(orcl,orcls)' scope=both sid='*'; 
#LOG_ARCHIVE_DEST_1指定主库归档日志,即当此数据库以主或备用角色运行时,目标1将所有日志文件归档到+DATADG01本地目录位置。 
alter system set LOG_ARCHIVE_DEST_1='location=+DATADG01 VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl' scope=both sid='*';
#log_archive_dest_2指定传输归档目标为 db_orcls 使用tnsnames中的tns名称
alter system set log_archive_dest_2='service= db_orcls valid_for=(all_logfiles,primary_role) LGWR ASYNC NOAFFIRM delay=0 optional compression=disable max_failure=0 max_connections=1 reopen=300 db_unique_name=orcls net_timeout=30' scope=both sid='*';
参数解释:
log_archive_dest_n有三个属性都是用来指导在目标归档路径故障的情况下,归档过程应如何继续下去,这三个属性是:
--reopen:能用于DG或者非DG的环境下,在非DG环境下当出现归档目录满或者因权限问题无法正常写入时,在DG环境下当prmy与stdby间的网络中断时,用来控制隔多长时间(以秒为单位)进行下一次的尝试
--max_failure:能用于DG或者非DG的环境下,当归档路径的写入失败次数超过指定次数时,就不会再次尝试继续归档到这个路径下了
--net_timeout:仅能用在保护模式为maximum availability的DG环境下,正常情况下prmy产生的redo通过LNS进程传输给Stdby的RFS进程,RFS进程接收到redo后回给prmy的LNS一个acknowledge,LNS进一步通知LGWR commit可以继续;当prmy与stdby间的网络中断时,LGWR如果在net_timeout定义的时间内无法收到LNS的通知,也能让commit继续下去。
#fal_server 指定目标端db_orcls, 使用tnsnames中的tns名称,主库上执行则配置为备库,备库执行此语句则配置为主库tns名称
alter system set fal_server='db_orcls' scope=both sid='*';
alter system set fal_client='db_orcl' scope=both sid='*';

#启用传输
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE;
#standby_file_management设置为AUTO,以便当向主库添加或删除数据文件时,会自动对备库进行相应的更改。
alter system set standby_file_management=auto scope=both sid='*'; 
alter system set LOG_ARCHIVE_DEST_STATE_2=defer scope=both sid='*';
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=both sid='*';

###以上主备都需要
/*
#如果需要主备切换,则需要修改以下参数,需要重启数据库
--因主库参数文件中默认没有 db_unique_name 故添加,两个 convert 参数因主库为 RAC,备库为单机文件系统,且此参数在主库修改时备库在前,主库在后,此三个参数要重启数据库。
alter system set db_unique_name=orcl scope=spfile sid='*';
#convert参数为数据文件和日志文件路径。格式为
--db_file_name_convert:主库目录,备库目录,主库目录,备库目录
--log_file_name_convert:主库目录,备库目录,主库目录,备库目录
#注意db_create_file_dest='/data/' 参数,如果physicalstandby同时设置了db_create_file_dest/db_file_name_convert,db_create_file_dest参数优先级高于 db_file_name_convert 参数.
--主库配置:
alter system set db_file_name_convert ='+DATA/orcl','/data/orcls','+FRA/orcl','/data/orcls'  scope=spfile sid='*';
alter system set log_file_name_convert='+DATA/orcl','/data/orcls','+FRA/orcl','/data/orcls'  scope=spfile sid='*';
--备库配置:
alter system set db_file_name_convert='/data/orcls','+DATA/orcl','/data/orcls','+FRA/orcl'  scope=spfile sid='*';
alter system set log_file_name_convert='/data/orcls','+DATA/orcl','/data/orcls','+FRA/orcl'  scope=spfile sid='*';
*/
示例:
alter system set db_file_name_convert='+DATADG/orcls/DATAFILE/','+DATADG/orcl/DATAFILE/','+DATADG01/orcls/DATAFILE/','+DATADG01/orcl/DATAFILE/','+DATADG/orcls/TEMPFILE/','+DATADG/orcl/TEMPFILE/', '+DATADG/orcls/DUMPSET','+DATADG/orcl/DUMPSET/' scope=spfile sid='*';
alter system set log_file_name_convert='+DATADG/orcls/ONLINELOG/','+DATADG/orcl/ONLINELOG/','+DATADG01/orcls/ONLINELOG/','+DATADG/orcl/ONLINELOG/' scope=spfile sid='*';
alter system set db_file_name_convert='+DATADG/orcls/DATAFILE/','+DATADG/orcl/DATAFILE/','+DATADG01/orcls/DATAFILE/','+DATADG01/orcl/DATAFILE/','+DATADG/orcls/TEMPFILE/','+DATADG/orcl/TEMPFILE/', '+DATADG/orcls/DUMPSET','+DATADG/orcl/DUMPSET/','+DATADG/orcls/PARAMETERFILE','+DATADG/orcl/PARAMETERFILE','+DATADG/orcls/DATAFILE/TRFFPN/','+DATADG/orcl/DATAFILE/TRFFPN/','+DATADG/orcls/DATAFILE/VEHMON/','+DATADG/orcl/DATAFILE/VEHMON/','+DATADG/orcls/DATAFILE/VRC/','+DATADG/orcl/DATAFILE/VRC/',

标签:主库,11g,db,system,ADG,orcl,orcls,oracle,alter
From: https://blog.csdn.net/liangmumugengyun/article/details/141405252

相关文章

  • 【Windows Server2016下Oracle11g DG配置实操步骤】
    WindowsServer2016下Oracle11gDG配置实操步骤文章目录WindowsServer2016下Oracle11gDG配置实操步骤前言一、部署规划1.1、虚拟机搭建:1.2、环境规划:1.3、主库操作系统配置1.4、数据库安装和实例创建1.5、监听配置1.6、网络配置1.7、克隆虚拟机二、主库配置2.1、查看......
  • oracle 如果是多条插入语句用begin end 快还是一条一条插入快?
    在Oracle数据库中,对于多条插入语句,使用BEGIN...END块(结合事务控制)通常会比一条一条地插入更快,尤其是在处理大量数据时。这主要是因为以下几个原因:减少网络往返次数:当在应用程序和数据库之间执行SQL语句时,每条SQL语句的发送和执行都需要网络往返时间。将多条插入语句封装在B......
  • Oracle sys.dba_audit_session查询慢
    备注:Oracle 11.2.0.4一.问题描述从awr报告可以看到这个EM相关的sql消耗了大量的IO。也可以通过消耗IO的sql来查找:--找出消耗物理IO资源最大的的SQL语句selectdisk_reads,substr(sql_text,1,4000)fromv$sqlareaorderbydisk_readsdesc;具体的慢SQL如下:SELECT......
  • 数据库运维实操优质文章分享(含Oracle、MySQL等) | 2024年7月刊
    本文为大家整理了墨天轮数据社区2024年7月发布的优质技术文章/文档,主题涵盖Oracle、MySQL、PostgreSQL等主流数据库系统以及国产数据库的深度教程和实用指南。从基础的安装配置到复杂的故障排查,再到性能优化的高级技巧,每篇文章都是由领域专家精心撰写。此外,还有常用脚本和操作注意......
  • 修改$ORACLE_HOME/network/admin/sqlnet.ora
    原因分析:网上查了主要是说我电脑上orcale的客户端版本和访问的oracle服务端的版本不一致,但我连接的是本地数据库,应该不存在该问题。保险起见,我先在网上找了相关问题的讨论,大家提出的常用解决方案是修改$ORACLE_HOME/network/admin/sqlnet.ora文件里的参数配置,对于该方法跟我的问......
  • 【Oracle】存储过程中将动态SQL的多行结果进行循环遍历
    【Oracle】存储过程中将动态SQL的多行结果进行循环遍历需求背景:有一段拼接出来的动态SQL,结果为多行,需要在函数或者存储过程中将其结果作为游标中的数据循环遍历出来以便后续数据操作使用动态SQL和隐式游标隐式游标不支持动态SQL的直接使用,但是可以通过EXECUTEIMMEDIATE来执行......
  • Oracle手工注入
    1.点击输入框下方的公告,进入到可sql注入界面2.通过1=1和1=2可以判断注入点?id=1and1=1  //显示正常?id=1and1=2  //显示错误检测到此处可以进行注入3.判断列数利用orderby?id=1orderby2  //显示正常?id=1orderby3  //显示错误所以一共有两......
  • 墨者学院Oracle靶场通关
    首先1判断注入点这⾥通过and1=1和and1=2进⾏判断。发现存在注入点之后我们开始判断字段数id=1orderby2id=1orderby3字段=3页面回显异常 ,说明只存在两个字段接下来我们开始判断回显点id=-1unionselect'null','null'fromdual查完之后我们开始用下面......
  • oracle & mysql 驱动程序安装配置
    Install-PackageOracle.ManagedDataAccess-Version12.2.20230118  版本可以安装到19.18Install-PackageMySql.Data-Version8.0.32.1config文件新增内容<system.data>  <DbProviderFactories>    <removeinvariant="MySql.Data.MySqlClient"/>    &......
  • 【Oracle】存储过程临时存储键值对
    【Oracle】存储过程临时存储键值对通常可以使用pl/sql表(也称为索引表或关联数组)来存储这些键值对,即typekey_value_tableistableofvarchar2(100)indexbyvarchar2(100)示例:createorreplaceprocedurestore_key_value_pairsis--定义一个pl/sql表来存储键值对......