F:\oracle\product\10.2.0\db_1\NETWORK\ADMIN下找到 listener.ora,

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
     )

加入 (SID_DESC =
      (GLOBAL_DBNAME = CITYLOCATION)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (SID_NAME = CITYLOCATION)
    )

 

即:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = CITYLOCATION)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (SID_NAME = CITYLOCATION)
    )
  )

(注:CITYLOCATION为你的数据库名字。ORACLE_HOME为你Oracle的安装路径。要改成你自己的。)

然后找到服务中重启OracleOraDb10g_home1TNSListener服务。ok。

 

问题发生在删除数据库CITYLOCATION又重建之后。如果是第一次建库,没有这个监听问题。