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. Linux命令CURL用法

    Curl是一个命令行方式下传输数据的开源传输工具,支持多种协议包括:FTP,HTTP,HTTPS,IMAP,POP3,TELNET等.同样支持HTTP POST方法,PUT方法,FTP上传,cooki ...

  2. spring源码学习之容器的扩展(二)

    六 BeanFactory的后处理BeanFactory作为spring容器的基础,用于存放所有已经加载的bean,为了保证程序上的高扩展性,spring针对BeanFactory做了大量的扩展,比如 ...

  3. HDU6200 mustedge mustedge mustedge

      不用看题就知道这是和什么tarjan.缩点或桥一类有关的题. 谁让他取题目叫一个mustedge还连续写3次的(哦,似乎是因为那个比赛的题目都是这个画风) 必须的边 >必须要经过的边 > ...

  4. 数据库--sql语句

    数据库的操作语句总共四大类:增insert into  删delete  改update  查select; 增:INSERT INTO `表名`(`字段名`,`字段名`) `VALUES`('值', ...

  5. angular4 动态创建组件 vs 动态创建模板

    实现  模拟场景:页面上"帮助"按钮的点击触发帮助文档的弹出框,且每个页面的帮助文档不一样 因此弹出框里的帮助文档是一个动态模板而不是动态组件 以下comp均代表Type类型的动态 ...

  6. IO流5 --- FileReader读入数据的基本操作 --- 技术搬运工(尚硅谷)

    FileReader 字符输入流 @Test public void test1(){ File file = new File("hello.txt"); FileReader ...

  7. 洛谷P1311 [NOIP2011提高组Day1T2]选择客栈

    P1311 选择客栈 题目描述 丽江河边有n 家很有特色的客栈,客栈按照其位置顺序从 1 到n 编号.每家客栈都按照某一种色调进行装饰(总共 k 种,用整数 0 ~ k-1 表示),且每家客栈都设有一 ...

  8. Vue.js @click点击无效?

    原因, 那个点击的元素, 没有在 <div id="app"></div>里面

  9. map.(parseInt)方法详解

    偶然间碰到这样一个问题: ["1","2", "3"].map(parseInt) //[ 1, NaN, NaN ] 运行结果 [ 1, ...

  10. Django框架Day3------之Models

    一.Django models字段类型清单: AutoField:一个自动递增的整型字段,添加记录时它会自动增长.你通常不需要直接使用这个字段:如果你不指定主键的话,系统会自动添加一个主键字段到你的m ...