SP2-0642: SQL*Plus internal error state 2130, context 0:0:0

2016-10-09

没有评论

今天一个10g的客户端,连接12c的数据库,报错:

sqlplus user/passwd@10.11.22.33:1525/mysrv

SQL*Plus: Release 11.1.0.6.0 - Production on Thu Jun 11 10:05:29 2009

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

SP2-0642: SQL*Plus internal error state 2130, context 0:0:0
Unsafe to proceed

1
2
3
4
5
6
7
8
sqlplus user/passwd@10.11.22.33:1525/mysrv
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Jun 11 10:05:29 2009
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
 
SP2-0642: SQL*Plus internal error state 2130, context 0:0:0
Unsafe to proceed

而这个客户端连接其他12c的数据库是没有问题的。

这是因为建立的service已经是非标准的service,包含了failover type等参数。见下面的Test Case:

Test Case:
----------
1.Create a service

srvctl add service -d <database-name> -s <service-name> -r "instance-name,instance-name" -P BASIC

2. Start the service

srvctl start service -d rac -s <service-name>
Below was service called test_srv

3.Make a connection using ezconnnect >>

sqlplus scott/tiger@jcrac1-vip:1521/test_srv

This will work.

4.Now modify the service

SQL> select name,service_id from dba_services where name = 'test_srv';

NAME SERVICE_ID
---------------------------------------------------------------- ----------
server_taf 12

SQL> execute dbms_service.modify_service (service_name => 'test_srv' -
, aq_ha_notifications => true -
, failover_method => dbms_service.failover_method_basic -
, failover_type => dbms_service.failover_type_select -
, failover_retries => 180 -
, failover_delay => 5 -
, clb_goal => dbms_service.clb_goal_long);

SQL>select name, failover_method, failover_type, failover_retries,goal,
clb_goal,aq_ha_notifications from dba_services where service_id = 12

NAME METHOD TYPE RETRIES GOAL CLB_GOAL AQNOT
--------------- ----------- ---------- -------- ---------- -------- -----
test_srv BASIC SELECT 180 NONE LONG YES

5.Connection now fails

sqlplus scott/tiger@jcrac1-vip:1521/test_srv

SQL*Plus: Release 11.1.0.6.0 - Production on Thu Jun 11 10:05:29 2009

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

SP2-0642: SQL*Plus internal error state 2130, context 0:0:0
Unsafe to proceed
Enter user-name:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Test Case:
----------
1.Create a service
srvctl add service -d <database-name> -s <service-name> -r "instance-name,instance-name" -P BASIC
2. Start the service
srvctl start service -d rac -s <service-name>
Below was service called test_srv
3.Make a connection using ezconnnect >>
sqlplus scott/tiger@jcrac1-vip:1521/test_srv
This will work.
4.Now modify the service
SQL> select name,service_id from dba_services where name = 'test_srv';
NAME                                                             SERVICE_ID
---------------------------------------------------------------- ----------
server_taf                                                               12
SQL> execute dbms_service.modify_service (service_name => 'test_srv' -
, aq_ha_notifications => true -
, failover_method => dbms_service.failover_method_basic -
, failover_type => dbms_service.failover_type_select -
, failover_retries => 180 -
, failover_delay => 5 -
, clb_goal => dbms_service.clb_goal_long);
SQL>select name, failover_method, failover_type, failover_retries,goal,
clb_goal,aq_ha_notifications from dba_services where service_id = 12
NAME            METHOD      TYPE        RETRIES GOAL       CLB_GOAL AQNOT
--------------- ----------- ---------- -------- ---------- -------- -----
test_srv        BASIC       SELECT          180 NONE       LONG     YES
5.Connection now fails
sqlplus scott/tiger@jcrac1-vip:1521/test_srv
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Jun 11 10:05:29 2009
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
SP2-0642: SQL*Plus internal error state 2130, context 0:0:0
Unsafe to proceed
Enter user-name:

该问题是Bug 8599395 : EZCONNECT ERRORS WITH SP2-0642: SQL*PLUS INTERNAL ERROR STATE 2130, CONTEXT 0:0:

解决方法:

建议升级客户端到11.2以上,或者按照bug文档中的workaround也可以:

Workaround:
-----------
LOCAL naming resolution works -- 使用tnsnames.ora文件连接
Use standard service works -- 使用标准的service,去掉failover type的参数设置
Do not put port number in the command -- 使用1521默认端口,ezconnect的时候,不写端口号
1
2
3
4
5
Workaround:
-----------
LOCAL naming resolution works -- 使用tnsnames.ora文件连接
Use standard service works -- 使用标准的service,去掉failover type的参数设置
Do not put port number in the command -- 使用1521默认端口,ezconnect的时候,不写端口号

发表评论 取消回复

电子邮件地址不会被公开。 必填项已用*标注

评论

姓名 *

电子邮件 *

站点

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据


原文地址:https://oracleblog.org/working-case/sp2-0642-sqlplus-internal-error-state-2130-context-000/

SP2-0642: SQL*Plus internal error state 2130, context 0:0:0的更多相关文章

  1. sqlplus 连接数据库报错SP2-0642: SQL*Plus internal error state 2130, context 0:0:0

    sqlplus 连接数据库报错SP2-0642: SQL*Plus internal error state 2130, context 0:0:0 问题描述: 使用sqlplus客户端登录数据库,报 ...

  2. sqlplus连接数据库报错SP2-0642: SQL*Plus internal error state 2130, context 0:0:0解决

    sqlplus连接数据库报错SP2-0642: SQL*Plus internal error state 2130, context 0:0:0解决 sqlplus 连接数据库报错SP2-0642: ...

  3. SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0] ORA-12541: TNS:no listener

    使用/app/oracle/product/11.2.0/bin/sqlldr导入数据报错: 监听没有开启?检查发现监正常 猜测是监听端口不是默认的1521有关系,直接在sid里面加上数据库服务器的i ...

  4. Eclipse启动时出现错误 An internal error occurred during: “Updating indexes”

    在Eclipse的workspace下有个.metadata文件夹,Eclipse出现异常的log文件就在这个目录下. 最近出现了这样的错误: 查看日志文件发现:     !ENTRY org.ecl ...

  5. Eclipse启动时出现错误 An internal error occurred during: "Updating indexes"

    在Eclipse的workspace下有个.metadata文件夹,Eclipse出现异常的log文件就在这个目录下. 最近出现了这样的错误: 查看日志文件发现:     !ENTRY org.ecl ...

  6. SQL Server 2005 sp_send_dbmail出现Internal error at FormatRowset (Reason: Not enough storage is available to complete this operation)

    案例环境: 操作系统: Windows 2003 SE 32bit(SP2) 数据库版本:Microsoft SQL Server 2005 - 9.00.5069.00 (Intel X86) Au ...

  7. An internal error occurred during: &quot;Checking tomcat state&quot;. Error while reading server.xml

    An internal error occurred during: "Checking tomcat state". Error while reading server.xml ...

  8. Start Failed, Internal error: recovering IDE to the working state after the critical startup error

    Start Failed, Internal error: recovering IDE to the working state after the critical startup error F ...

  9. SQL Tuning Advisor一个错误ORA-00600: internal error code, arguments: [kesqsMakeBindValue:obj]

    跑SELECT dbms_sqltune.report_tuning_task(:tuning_task) FROM dual;  错误消息,如下面: ORA-00600: internal erro ...

随机推荐

  1. 使用Charles在iOS6上进行抓包

    抓取Web页面的网络请求很容易,Chrome和Firefox都很容易做到.iOS APP如何抓包呢?其实也很容易,我比较喜欢使用 Charles. 我用的是Mac电脑,首先建立一个热点,然后让iOS设 ...

  2. win10 下安装 neo4j

    1.neo4j介绍 neo4j是基于Java语言编写图形数据库.图是一组节点和连接这些节点的关系.图形数据库也被称为图形数据库管理系统或GDBMS.详细介绍可看Neo4j 教程 2.安装Java jd ...

  3. python实例 字符串

    比起C/C++,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧. #! /usr/bin/python word="abcdefg" a=word[2] pri ...

  4. Codeforces 608E. Marbles

    E. Marbles time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  5. NOIP2016参赛日志+总结

    这个故事告诉我们,成绩出来之前一定要装弱.这些文字是作者拿到程序后测了洛谷民间数据后写的. 2016.11.18  Day    0 早上五点半起床,洗漱完毕,吃了早饭,收拾收拾,七点半从家出发,去了 ...

  6. 洛谷P1080 [NOIP2012提高组D1T2]国王游戏 [2017年5月计划 清北学堂51精英班Day1]

    P1080 国王游戏 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右 手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排 ...

  7. Django项目:CRM(客户关系管理系统)--09--04PerfectCRM实现King_admin注册功能01

  8. JDK的KEYTOOL的应用,以及签署文件的应用(原创)

    首先,我是这样的情况下学到这部分知识的: 我们公司同事把自己的unity生成的APK包查出MD5值直接拿出去微信那边申请,当然这样本来是没毛病,毕竟当时只有他一个人开发这个游戏, 然而我们几个前端过去 ...

  9. Oracle企业管理框架

    oracle管理服务器 是一个基于java的web构件,该构件是dba用来监视和控制oracle企业框架内各个受管理目标的实际界面 oracle储存库 已收集到并与受管理目标有关的配置和监视信息被存储 ...

  10. 【水滴石穿】react-native-book

    先推荐一个学习的地址:https://ke.qq.com/webcourse/index.html#cid=203313&term_id=100240778&taid=12778558 ...