linux系统 配置DataGuard时报ORA-12528错误的解决办法

yizhihongxing

当配置Linux系统下Oracle数据库的DataGuard时,有时会遇到ORA-12528错误,这是因为监听器没有被正确设置引起的。本文将详细介绍如何解决这个问题。

问题描述

在配置Oracle DataGuard时,部署完主库,建立归档传输服务,配置好主库的tnsnames和listener.ora文件后,尝试在备库的tnsnames中添加主库的模式为log_archive_dest的连接信息,使用tnsping命令进行连接测试,出现以下错误信息:

TNS-12541: TNS没能成功建立到目标计算机的连接,因为该计算机拒绝了连接请求

此时,在备库的alert日志文件中会出现以下错误信息:

ORA-12528: TNS:listener: all appropriate instances are blocking new connections

解决方案

针对上述问题,可以按照以下步骤进行解决:

第一步:确认监听器的状态

确定主库上的监听器是否正常运行,可以使用以下命令查看监听器的状态:

lsnrctl status LISTENER

如果监听器状态正常,会看到如下信息:

Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Listener Parameter File ".../network/admin/listener.ora"
Listener Log File ".../diag/tnslsnr/your_host/listener/alert/log.xml"
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM", status READY, has 1 handler(s) for this service...
Service "ORCL" has 1 instance(s).
  Instance "ORCL", status READY, has 1 handler(s) for this service...
The command completed successfully

如果监听器状态为UNKNOWN或者READY,说明监听器已经启动,可以进行下一步操作。

第二步:检查tnsnames.ora文件

确保备库tnsnames.ora文件中主库连接信息配置正确,特别是log_archive_dest参数的正确配置。

#格式如下(在tnsnames.ora中添加格式):
[oracle@bac-01 ~]$ cat tnsnames.ora
....
....
orcl =
  (DESCRIPTION = + 
    (ADDRESS_LIST = + 
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521)) +
    ) +
    (CONNECT_DATA = + 
      (SERVICE_NAME = orcl) + 
    ) + 
    (LOG_ARCHIVE_DEST = (SERVICE= ora11g) + 
      (SERVICE_NAME = orcl) + 
      (LGWR = true) + 
      (NET_TIMEOUT = 30) + 
      (USE_SHMEM = true) + 
      (ASYNC = false) + 
      (VALID_FOR = (ONLINE_LOGFILES,PRIMARY_ROLE))
    )
  )

第三步:重启监听器

如果以上两步没有解决问题,可能需要重启监听器。可以使用以下命令来重新启动监听器:

lsnrctl stop LISTENER
lsnrctl start LISTENER

第四步:检查主库参数

如果以上三步还不能解决问题,可以检查主库的参数设置是否正确。如果主库未正确配置DataGuard参数,可能导致监听器无法接受新的连接请求。可以使用以下命令来检查主库参数设置:

SQL> show parameter standby

确保以下参数设置正确:

LOG_ARCHIVE_DEST_STATE_2 = ENABLE
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;

示例说明

示例一

其中一个用户在配置DataGuard时遇到了进程未启动完成,这时无法完成切换。根据以上解决方法,在检查监听器状态,检查tnsnames文件时,需要保证当前的网络状况没有出现问题。可以在备库通过tnsping命令测试能否连通主库,在主库检查监听器状态是否为READY。如果还无法解决问题,可以考虑在备库和主库上重新启动监听器。最终可以确认主库参数设置是否正确,并进行修改。通过以上的解决方法,该用户成功地解决了进程未启动完成的问题。

示例二

另一个用户在配置DataGuard时遇到了ORA-12528错误。根据以上解决方法,在经过以上三步操作后,仍然没有解决问题。于是该用户检查了主库参数设置,发现主库没有正确配置DataGuard参数,针对该问题进行了修改。最终该用户成功地解决了ORA-12528错误。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux系统 配置DataGuard时报ORA-12528错误的解决办法 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL二进制日志(Binary Log)详解

    MySQL二进制日志(Binary Log)是MySQL数据库记录的一种日志,用于记录对数据库进行修改的所有操作,如数据的更新、插入、删除等,以及对数据库的结构操作,如表的创建、删除等。该日志以二进制的形式存储,是一种非常高效的记录方式。 二进制日志的作用 数据恢复:MySQL数据库在运行过程中可能会遇到一些故障,例如数据库崩溃、停电等,此时可能会丢失部分数…

    MySQL 2023年3月10日
    00
  • redis5 集群迁移方案

    Redis5 集群迁移方案     一、KEY优化 1.按原来要求进行优化与大KEY分拆。 二、现Redis 集群缩容(对业务无影响) 主节点按要求合并至3个主节点。 业务配置为3主4从 删除没有槽的主节点与相应从节点。 三、配置新Redis集群 按集群方式配置2个虚拟机或3台虚拟机(按最终集群要求,主从采用2个虚拟机,集群采用3台虚拟机,从节点先不建)。 …

    Redis 2023年4月12日
    00
  • DBMS 事务状态

    DBMS(数据库管理系统)中的事务状态是指事务在执行过程中的不同阶段的状态。在DBMS中,事务具有原子性、一致性、隔离性和持久性(ACID)这四个特性,事务状态的管理是保证事务能够可靠执行的基础。 下面是事务状态的完整攻略: 1. 事务状态的定义 事务状态是指事务在执行过程中,从开始到最终提交或回滚,经历了哪些具体的状态变化。常见的事务状态有五种:活动状态、…

    database 2023年3月27日
    00
  • mysql 查询指定日期时间内sql语句实现原理与代码

    MySQL 查询指定日期时间内的数据需要用到 SQL 语句中的 WHERE 子句和日期时间函数。具体实现原理和代码步骤如下: 在 SQL 语句中使用 WHERE 子句筛选指定日期时间内的数据。 WHERE 子句基本语法为 WHERE column operator value ,其中 column 表示指定的字段名称,operator 表示比较运算符,val…

    database 2023年5月22日
    00
  • 了解Linux

    了解 Linux 的完整攻略包括以下几个步骤: 1. 安装 Linux 操作系统 首先,需要下载并安装一个 Linux 操作系统。目前,广泛使用的 Linux 操作系统有 Ubuntu、Debian、Fedora、CentOS 等等。可以选择自己喜欢的操作系统,并查看官方教程进行安装。 示例:如果你是一个初学者,建议使用 Ubuntu 操作系统。你可以访问 …

    database 2023年5月22日
    00
  • centos7安装clickhouse并设置用户名密码案例详解

    CentOS7安装ClickHouse并设置用户名密码 ClickHouse是一款高性能、可扩展且开源的列式数据库管理系统。本文将介绍在CentOS7操作系统上安装ClickHouse,并设置用户名密码的详细步骤。 步骤一:安装ClickHouse 在CentOS7系统上,下面是安装ClickHouse的步骤: 添加ClickHouse Yum仓库 bash…

    database 2023年5月22日
    00
  • SQL索引失效的11种情况详析

    我来详细讲解“SQL索引失效的11种情况详析”的完整攻略。 SQL索引失效的11种情况详析 1. 模糊查询(LIKE ‘%…%’) 在SQL语句中使用LIKE ‘%…%’方式进行模糊查询时,由于需要进行全表扫描从而导致索引失效。 示例:假设需要查询姓名中包含“张”的学生信息。 SELECT * FROM students WHERE name LIK…

    database 2023年5月22日
    00
  • 详解.NET中使用Redis数据库

    详解.NET中使用Redis数据库 在.NET项目中,Redis数据库是一种常用的高效、可靠的NoSQL数据库。本攻略将详细讲解.NET中使用Redis数据库的完整流程,包括Redis的安装、配置,以及.NET与Redis的交互方法。 安装Redis Redis的安装十分简单直接。可以下载官方版Redis并按照默认安装路径安装,也可以使用包管理工具进行安装。…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部