ORA-12170: TNS: 连接超时

今天,当查询一个表时,出现错误(平时都没出现过这个错误):
SQL> select count(*) from pro_well_vol_daily;
select count(*) from pro_well_vol_daily
                     *
第 1 行出现错误:
ORA-12170: TNS: 连接超时
但是,查SCOTT用户下的emp表却可以查到。
我这是连接的自己本机。


于是,我查看了一下pro_well_vol_daily的定义,看到
create or replace view pro_well_vol_daily as
select
 w.WELL_ID, pc.PROD_DATE, pc.PROD_TIME, pc.REMAIN_DEDU_TIME, pc.REMAIN_DEDU_VOL,
 pc.LIQ_PROD_DAILY, pc.OIL_PROD_DAILY, pc.WATER_PROD_DAILY, pc.GAS_PROD_DAILY,
 pc.GAS_RELEASE_DAILY, pc.SELF_USED_GAS_VOL, pc.GAS_OIL_RATIO, pc.WATER_GAS_RATIO,
 pc.SALT_CUT,
  pc.WATER_CUT, pc.SAND_CONTENT_RATIO,
 pc.GAS_FLUID_CONTENT, pc.GAS_CHLORIDE_CONTENT,
 pc.STIM_KEY_ID, pc.MAINTAIN_TYPE, pc.DOWNTIME_TYPE, pc.THERMAL_TAG, pc.REMARKS,
 pc.CREATE_DATE, pc.CREATE_USER_ID, pc.UPDATE_DATE, pc.UPDATE_USER_ID,
 pc.WATER_DEDUCT--, pc.TEST_LIQ_PROD_DAILY
from pc_pro_well_vol_daily2 pc, well w
where pc.well_id = w.w_id;
即pro_well_vol_daily是基于pc_pro_well_vol_daily2建立的。
于是,再看一下后者的定义:
CREATE OR REPLACE SYNONYM "TLM_SPJ"."PC_PRO_WELL_VOL_DAILY2" FOR

"PC_PRO_WELL_VOL_DAILY"@"A2.SPJ.COM";
原来这里涉及到了数据库连接,远程连接了另外一台机器,而那台机器还没打开数据库而已。

解决办法:打开远程连接的那台机器的数据库即可。

你可能感兴趣的:(ORA-12170: TNS: 连接超时)