Oracle错误 ora-12514 解决方法
2016-09-02 19:13
435 查看
成功连到数据库上之后,查看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_DESC,我自己连接的数据库实例是XE,添加后的文件内容为:
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) |
相关文章推荐
- Oracle 10g中“ERROR-ORA-12514 TNS 监听程序当前无法识别连接描述符中请求的服务”错误的解决方法
- Oracle错误 ora-12514 解决方法
- oracle连接中出现错误ORA-12541,ORA-12514,ORA-01017的解决方法
- Oracle错误 ora-12514 解决方法
- oracle错误:ORA-12514的解决方法
- Oracle错误 ora-12514 解决方法
- 连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!
- Oracle错误 ora-12514 解决方法
- Oracle错误 ora-12514 解决方法
- oracle连接中出现错误ORA-12541,ORA-12514,ORA-01017的解决方法
- intra-mart中oracle ORA-02289: 順序が存在しません错误的解决的方法
- PLSQL不好用,提示ora-12514 错误解决方法
- oracle ORA-00119 ORA-00132 错误的解决方法
- ORACLE目录路径无效错误解决方法(ORA-29280)
- Oracle Ora-00600 4194错误的解决方法
- oracle登录错误:ORA-28000: the account is locked 解决方法
- oracle 11g ORA-12514错误,我的解决办法
- Oracle ORA-32700 错误解决方法
- 代码访问Oracle,出现ORA-01000超出打开游标的最大数 错误之解决方法
- 连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决