必威体育Betway必威体育官网
当前位置:首页 > IT技术

Oracle错误 ora-12514 解决方法

时间:2019-06-26 13:42:08来源:IT技术作者:seo实验室小编阅读:67次「手机版」
 

ora-12514

成功连到数据库上之后,查看listener状态:lsnrctl status

status READY 状态,需要由非归档转为归档模式,故操作如下:

1.关闭数据库shutdown immediate 正常关闭;

2.启动数据库到mount状态,startup mount,发生报错:

3.此时查看listener状态: lsnrctl status

为status BLOCKED状态,网上搜索解决方法http://zhidao.baidu.com/question/278798900.html

4.重写listener.ora文件(蓝色为增加部分)

SID_LIST_LISTENER =

(SID_LIST =

   (SID_DESC =

 (SID_NAME = PLSExtProc) 

     (oracle_HOME = f:\oracle\product\10.1.0\Db_1)

(PROGRAM = extproc) 

   )

(SID_DESC =

(GLOBAL_DBNAME = orcl)

(ORACLE_HOME = f:\oracle\product\10.1.0\Db_1)

(SID_NAME = orcl)

   )

)

5.重启监听:lsnrctl start;查看状态lsnrctl status:

为status UNKNOWN状态。

6.连到实例,关闭数据库,启动数据库到mount状态,均正常!

查看某服务是动态注册或是静态注册。

可以使用命令lsnrctl status 来查看数据库是动态注册还是静态注册。

实例状态为UNKNOWN时,表示此服务是静态注册的设置,监听器表明他不知道关于该实例的任何信息,只有当用户发出连接请求时,他才检查该实例是否存在。

而动态注册的数据库通过状态信息中的状态为READY或BLOCKED来指明。不管何时关闭数据库,动态注册的数据库都会动态的从监听器中注销掉,而与之相关的信息将会从状态列表消失,这样不管数据库是在运行还是已经关闭,监听器都知道他的状态。

待补充。。。

************************************************************

ORACLE XE 修改方法

解决办法:

修改目录E:\oracle10gXEUniv\APP\oracle\product\10.2.0\server\NETWORK\ADMIN下的文件tnsnames.ora、listener.ora将这两个文件中HOST后面的主机都修改为127.0.0.1然后重启OracleServiceXE、OracleXETNSListener服务

这时pl/sql developer连接oracle时报出“ora-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务”的错误,再次修改listener.ora文件,修改前该文件内容

SID_LIST_LISTENER =

(SID_LIST =

   (SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = E:\Oracle10gXEUniv\app\oracle\product\10.2.0\server)

(PROGRAM = extproc)

   )

   (SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = E:\Oracle10gXEUniv\app\oracle\product\10.2.0\server)

(PROGRAM = extproc)

   )

)

LISTENER =

(DESCRIPTION_LIST =

   (DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))

(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

   )

)

DEFAULT_SERVICE_LISTENER = (XE)

修改的方式是:再在该文件中添加一个需要连接的数据库实例的描述,就是添加一个SID_DESC,我自己连接的数据库实例是XE,添加后的文件内容为:

SID_LIST_LISTENER =

(SID_LIST =

   (SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = E:\Oracle10gXEUniv\app\oracle\product\10.2.0\server)

(PROGRAM = extproc)

   )

   (SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = E:\Oracle10gXEUniv\app\oracle\product\10.2.0\server)

(PROGRAM = extproc)

   )

   (SID_DESC =

(SID_NAME = XE)

(ORACLE_HOME = E:\Oracle10gXEUniv\app\oracle\product\10.2.0\server)

)

/*红色字体部分即为新加的数据库实例XE的实例描述,注意该实例描述的ORACLE_HOME后面不能像其它实例那样加(PROGRAM = extproc),否则会报“ORA-28547: TNS: 连接服务器失败,可能是Net8管理错误。”*/

)

LISTENER =

(DESCRIPTION_LIST =

   (DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))

(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

   )

)

DEFAULT_SERVICE_LISTENER = (XE)

相关阅读

如何修复ntdll.dll错误

ntdll.dll下载地址 密码:rzhu 我是mysql报的ntdll.dll错误,所以直接将文件粘到mysql的安装目录下即可。 若要粘到系统目录(C:\Windo

wampserver中配置虚拟主机时AllowOverride设置为all报

原因:apache没有开启mod_headers.so 或者没有开启mod_rewrite.so解决方法:将httpd.conf中的下面两个配置去掉分号 LoadModule rewr

陈大年:创业16年,才发现「拼命创业就能成功」是错误的

为了将公司发展得更快,「996」已成为诸多互联网创业公司的常态,许多员工表示「感觉身体被掏空」。所以,我们究竟应该以怎样的节奏和

navicat连接mysql8错误1130方案解决

安装MySQL8.0发现用navicat 连接不上MySQL了,大概原因是mysql的root用户的验证方式变了。可以从图下看出root的用户的加密方式为ca

天涯社区总裁邢明:阴差阳错误入IT,17年来我总结的5点血

第一个反思是融资上的迟缓;第二个反思是对时机把握的失误;第三个反思是对整个业务不够聚焦;第四个反思是人才一直制约着天涯的发展;第

分享到:

栏目导航

推荐阅读

热门阅读