最近换了个64位的系统,重装了Oracle数据库,结果使用plsql访问时候出问题了,一直登录不上,使用 sqlplus能正常登录。
版本信息: Oracle 11g Express Edition,Win 7 64位,plsql 9.0。
如下所示:
修改listener.ora和tnsnames.ora的host为127.0.0.1之后,再次使用plsql访问,直接报错:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
搜索之后,问题解决,参考了博客
http://blog.csdn.net/luiseradl/article/details/7064916
解决记录:
未修改前 tnsnames.ora如下:
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = GX6CEUZMOUDIHMC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
listener.ora如下:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = GX6CEUZMOUDIHMC)(PORT = 1521))
)
)
(一)修改tnsnames.ora和listener.ora文件 把host=修改为 host=127.0.0.1。
(二)右击 我的电脑-->管理-->服务和应用程序-->程序 找到OracleService**,我的是OracleServiceXE
(三)把listener.ora的SID_LIST_LISTENER第一个SID_DESC修改为:
(SID_DESC =
(GLOBAL_DBNAME = XE)
(ORACLE_HOME =D:\oracle\app\oracle\product\11.2.0\server)
(SID_NAME = XE)
)
(四)在cmd命令行输入lsnrctl stop命令,和lsnrctl start命令。
(五)使用plsql登录
全文完,谢谢。