Oracle 11gR2 RAC 数据库不能连接(ORA-12537: TNS:connection closed)的解决

时间:2022-12-12 08:26:26
   

Oracle 11gR2 RAC 数据库不能连接(ORA-12537: TNS:connection closed)的解决

[oracle@rac01 ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 29 21:06:10 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> connect system/***@astt
ERROR:
ORA-12537: TNS:connection closed

[root@rac01 app]# ls -ltr
drwxr-xr-x 3 root   oinstall 4096
08-28 19:05 grid
drwxrwx--- 6 grid   oinstall 4096
08-29 00:03 oraInventory
drwxrwxr-x 7 oracle oinstall 4096 08-29 00:20 oracle
[root@rac01 app]# chmod 755 oracle
[root@rac01 app]# chmod 755 grid
[root@rac01 app]# ls -ltr
drwxr-xr-x 3 root   oinstall 4096
08-28 19:05 grid
drwxrwx--- 6 grid   oinstall 4096
08-29 00:03 oraInventory
drwxr-xr-x 7 oracle oinstall 4096 08-29 00:20 oracle

[oracle@rac01 ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 29 21:28:23
2012

Copyright (c) 1982, 2009, Oracle.  All rights
reserved.

SQL> connect system/***@astt;
????
SQL>

SQL> select instance_name from gv$instance;

INSTANCE_NAME
----------------
astt1
astt2

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
astt1

SQL>

参考:

metalink  [ID 1069517.1]:

Symptoms
In environment where listener home (including SCAN listener which
resides in Grid Infrastructure/ASM home) and database home are
owned by different OS user, ORA-12537 could happen when connecting
through listener, when creating database through DBCA, or when
installing database software and creating a database in
runInstaller. Job Role Separation is a typical example as SCAN and
local grid home listener is owned differently than database.
Error detail
12537, 00000, "TNS:connection closed"
// *Cause: "End of file" condition has been reached; partner has
disconnected.
// *Action: None needed; this is an information message.
Before the error is reported, connection could hang for a
while, and a core file may also be generated.
Screen output:
SQL> conn system/xxx@OSES
ERROR:
ORA-12537: TNS:connection closed
OR
PRCR-1079 : Failed to start resource ora.db11.db
CRS-5011: Check of resource db11 failed: details at ..
CRS-2674: Start of ora.db11.db on racnode1 failed
ORA-12546: TNS:permission denied
listener_scann.log or listener.log
TNS-12518: TNS:listener could not hand off client connection
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
  TNS-00516: Permission denied
   Linux Error: 13: Permission
denied
OR
TNS-12518: TNS:listener could not hand off client
connection
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
  TNS-00517: Lost contact
   Linux Error: 32: Broken
pipe
runInstaller error if installing
INFO: Starting Output Reader Threads for process
/ocw/grid/bin/kfod
INFO: Parsing KFOD-00300: OCI error [-1] [OCI error] [ORA-12547:
TNS:lost contact
INFO: Parsing ] [12547]
INFO: Parsing
INFO: The process /ocw/grid/bin/kfod exited with code 1
..
SEVERE: [FATAL] [INS-30502] No ASM disk group found.
   CAUSE: There were no disk
groups managed by the ASM instance +ASM1.
Cause
1. Listener owner (including SCAN listener) can not access
oracle binary in database home:
As listener owner:
$ ls -l $RDBMS_HOME/bin/oracle
ls: /home/oracle/app/oracle/product/11.2/db/bin/oracle: Permission
denied
2. Oracle binary in database home has wrong permission:
ls -l $RDBMS_HOME/bin/oracle
-rwxr-x--x 1 oracle asmadmin 184286251 Aug  9
16:25 /home/oracle/app/oracle/product/11.2/db/bin/oracle
The permission "-rwxr-x--x" is wrong as it's missing suid bit,
oracle binary should have permission of 6751:
-rwsr-s--x 1 oracle asmadmin 184286251 Aug  9
16:25 /home/oracle/app/oracle/product/11.2/db/bin/oracle
Note: If Job Role Separation is in place, the group will be ,
otherwise it will be
3. File System for database home does not support setuid/suid or
has nosetuid/nosuid set:
mount| grep
/home/oracle on /dev/dsk/diskoracle read/write/nosuid..
Solution
Solution is to make sure file system for database home has
setuid/suid set, database binary($RDBMS_HOME/bin/oracle) has
correct ownership and permission, and listener owner is able to
access database oracle binary (as listener owner, "ls -l
$RDBMS_HOME/bin/oracle" will tell)
If its Job Role Separation environment, please refer to the
following document:
Oracle® Grid Infrastructure
Installation Guide
11g Release 2 (11.2)
Oracle ASM Job Role Separation Option with SYSASM

官方解释如下:

Applies to:
Oracle Net Services - Version: 8.1.7.0
to 11.2.0.1 - Release: 8.1.7 to 11.2
Generic UNIX
Checked for relevance on 30-Apr-2010
Symptoms
Connection to the database server fails with ORA-12546 or
ORA-12537

Local connections working fine but the connection via listener
fails with ORA-12537 or ORA-12547

[oracle@myhost]$ sqlplusmyuser/mypass@mytns

SQL*Plus: Release 11.1.0.7.0 - Production on Fri Apr 30 21:32:18
2010

Copyright (c) 1982, 2008, Oracle. All rights reserved.

ERROR:
ORA-12537: TNS:connection closed

The listener log for the failing connection shows following
error message -

TNS-12518: TNS:listener could not hand off client
connection
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00516: Permission denied
Linux Error: 13: Permission denied

Or

TNS-12518: TNS:listener could not hand off client
connection
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
IBM/AIX RISC System/6000 Error: 32: Broken pipe

Cause
Permissions on oracle binary ( $ORACLE_HOME/bin/oracle ) are not
set correctly.

Solution
The OS level error message in the listener log "Linux Error: 13:
Permission denied" indicates that the listener was not able to hand
off the connection to oracle processes or not able to spawn a new
dedicated user process because of lack of permission at the OS
level. To resolve the error -

1. Check and correct the permission on /var/tmp/.oracle
directory. Permissions on this directory should be 777 with sticky
bit set.

# chmod 01777 /var/tmp/.oracle

2. Check and correct permissions on $ORACLE_HOME/bin/oracle
binary and make sure that it is set to 6751.

$ chmod 6751 $ORACLE_HOME/bin/oracle

检查自己环境,确实发现不是正确的权限

[root@ract1 bin]# pwd
/oracle/product/11.2.0/bin
[root@ract1 bin]# ls -la oracle
-rwxr-s--x 1 oracle asmadmin 228886426 Jan 7 15:46 oracle
[root@ract1 bin]# chmod 6751 oracle- -注意使用root用户给权限
[root@ract1 bin]# ls -la oracle
-rwsr-s--x 1 oracle asmadmin 228886426 Jan 7 15:46 oracle

修改后登陆正常:

[oracle@ract2 ~]$ sqlplussys/oracle@10.20.31.36:1521/racdbas
sysdba

SQL*Plus: Release 11.2.0.2.0 Production on Thu Jan 17 14:48:25
2013

Copyright (c) 1982, 2010, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit
Production
With the Partitioning, Real Application Clusters, Automatic Storage
Management, OLAP,
Data Mining and Real Application Testing options

SQL>

Oracle 11gR2 RAC 数据库不能连接(ORA-12537: TNS:connection closed)的解决的更多相关文章

  1. Oracle 11gR2 RAC 数据库不能连接(ORA-12537: TNS:connection closed)

    Oracle 11gR2 RAC 数据库不能连接(ORA-12537: TNS:connection closed)的解决 [oracle@rac01 ~]$ sqlplus /nolog SQL*P ...

  2. 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程

    测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...

  3. Oracle 11gR2 RAC 新特性说明

    最近接触了一下Oracle 11g R2 的RAC,发现变化很大. 所以在自己动手做实验之前还是先研究下它的新特性比较好. 一.    官网介绍 先看一下Oracle 的官网文档里对RAC 新特性的一 ...

  4. Linux平台 Oracle 11gR2 RAC安装Part3:DB安装

    四.DB(Database)安装 4.1 解压DB的安装包 4.2 DB软件安装 4.3 ASMCA创建磁盘组 4.4 DBCA建库 4.5 验证crsctl的状态 Linux平台 Oracle 11 ...

  5. ORACLE 11gR2 RAC添加删除(正常及强制)节点操作步骤(删除篇)

    ORACLE 11gR2 RAC添加删除(正常及强制)节点操作步骤(删除篇) 本文主要转载 [  http://www.cnxdug.org/?p=2511 ] 有部分细节自己实验添加,再此谢谢前辈. ...

  6. 一步一步搭建oracle 11gR2 rac+dg之环境准备(二)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之环境准备 (二) 一步一步搭建oracle 11gR2 rac+dg之环境准备 ...

  7. 一步一步搭建oracle 11gR2 rac+dg之database安装(五)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之database安装 (五)   转自 一步一步搭建oracle 11gR2 ...

  8. Oracle 11gR2 RAC网络配置,更改public ip、vip和scanip

    Oracle 11gR2 RAC网络配置,更改public ip.vip和scanip 转载黑裤子 发布于2018-10-30 01:08:02 阅读数 2898  收藏 展开 转载. https:/ ...

  9. Linux平台 Oracle 11gR2 RAC安装Part2:GI安装

    三.GI(Grid Infrastructure)安装 3.1 解压GI的安装包 3.2 安装配置Xmanager软件 3.3 共享存储LUN的赋权 3.4 使用Xmanager图形化界面安装GI 3 ...

随机推荐

  1. nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) 错误解决

    今天在做LNMP的时候,启动nginx服务,无法开启,导致网页打不开.把服务从起一下发现提示错误如下: Starting nginx: nginx: [emerg] bind() to 0.0.0.0 ...

  2. Python 中文Key 报错问题

    例如: # -*- coding=UTF-8 -*- import json data = [] with open('data.json') as f: for line in f: data.ap ...

  3. JavaScript DOM 编程艺术(第2版)读书笔记 (8)

    <!--这章的内容略奇怪啊!可能是因为我之前没有接触过这些知识点,等以后用到的时候再回来翻阅吧,现在先简要介绍一下 js权限已通过,博客园好快的效率啊,谢谢O(∩_∩)O --> 缩略语 ...

  4. python re

    >>> url="http://apk.gfan.com/Product/App45021.html" >>> result=html.cont ...

  5. HTML表格标记

  6. ABAP,学习不一样的EXCEL导出----XLSX Workbench

    这个工具是在查找ABAP导出EXCEL资料的时候发现,是国外的一位大牛自己开发的开源项目,体验了一番,确实很好用. 工具特点: No ABAP Programming Skills are requi ...

  7. Yii2之mailer的使用

     Mailer组件是yii框架自带的用于收发邮件的组件,无需安装,只需做一些配置即可使用,非常便捷.本文就mailer组件从配置到使用进行简单讲解.  首先在config/main.php配置如下: ...

  8. CentOS 关闭烦人的屏保

    1. VNC连接到服务器 2.打开 system tools - settings 在power处 将 Power Saving 设置改一下

  9. iOS开发技巧 - 使用UISegmentedControl来对信息进行分组

    (Swift) import UIKit class ViewController: UIViewController { var segmentedControl:UISegmentedContro ...

  10. 从新浪JS服务器获得股票和股指深度行情(&period;NET)

    当我们需要通过网络来自动获取股指或股票的深度行情时,一般有以下两种方法可以获得.目前除了使用Python进行爬虫获取(需要解析html获得)外还可以通过新浪提供的JS行情服务器获得,本文采用的是后者( ...