Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2880699
  • 博文数量: 599
  • 博客积分: 16398
  • 博客等级: 上将
  • 技术积分: 6875
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-30 12:04
个人简介

WINDOWS下的程序员出身,偶尔也写一些linux平台下小程序, 后转行数据库行业,专注于ORACLE和DB2的运维和优化。 同时也是ios移动开发者。欢迎志同道合的朋友一起研究技术。 数据库技术交流群:58308065,23618606

文章分类

全部博文(599)

文章存档

2014年(12)

2013年(56)

2012年(199)

2011年(105)

2010年(128)

2009年(99)

分类: Oracle

2014-05-29 15:53:29


最近开发人员遇到了一个奇怪的问题,话说应用查询某张表的某条记录的时候,一会儿存在一会儿消失。
在PLSQL DEVELOPER上查询的时候也是类似的问题。
但有一个规律是同一个PLSQL查询窗口或者SQLPLUS窗口要么能查询到要么查询不到,也就是说换了窗口才会出现这个问题。

最终原因找到了,非常坑爹。

数据库服务器上有2个库:
$ ps -ef | grep  smon
  oracle 13893808        1   0   Apr 01      -  1:25 ora_smon_sxsitdb
  oracle 17694792 23658712   0 10:47:05  pts/1  0:00 grep smon
  oracle 47054910        1   0   May 25      -  0:03 ora_smon_testdb

2个库的服务名都有testdb,而且这2个库都有相同的用户名和表结构,只不过数据不一样。

sxsitdb:

SQL> show parameter service_names

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
service_names                        string      sxsitdb,testdb,cndb

testdb:

SQL> show parameter service_names

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
service_names                        string       testdb


服务名重复了 导致配置的连接一会儿连到sxsitdb库上  一会儿连到testdb库上,最终导致了查询结果差异。
NEW_158 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.192.19.162)(PORT = 1521))
    (CONNECT_DATA =
      (SERVICE_NAME = testdb)
   )
  )
 

阅读(7838) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~