oracle遇见问题记录

Ora-12514:TNS:监听程序当前无法识别链接描述符中请求的服务。
在第一次配置 plsqldev 成功重启电脑之后,电脑突然无法连接数据库,并报出Ora-12514,这种情况首先要确定
监听服务是否启动,然后确定监听文件的配置,是否加上了你连接的数据库的名字:

listener.ora

# listener.ora Network Configuration File: E:\app\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = E:\app\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )



----------
    (SID_DESC =
       (GLOBAL_DBNAME = orcl)
       (ORACLE_HOME = E:\app\product\11.2.0\dbhome_1)
       (SID_NAME = orcl)
      )
----------
        这里就是需要根据实际情况添加的地方
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-SRQ0M5F)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER = E:\app

另外,PLSQL的instantclient_11_2文件夹里的tnsnames.ora也要按要求修改

tnsnames.ora:

# tnsnames.ora Network Configuration File: E:\app\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

orcl =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

这些配置完成之后,不知道是我操作问题还是怎么样,在连接时报出ora-10134和ora-27101两个错误
在一番搜索后,发现了一个解决方法:
ora-10134和ora-27101解决方法

里面大概就是讲

出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正常启动,共享内存并没有分配给当前实例.所以,通过设置实例名,再用操作系统身份验证的方式,启动数据库。这样数据库就正常启动了,就不会报ORA-01034和ORA-27101两个启动异常了。

为防止链接失效,这里再次阐述一遍:

1 先看oracle的监听和oracle的服务是否都启动了。启动oracle监听:
cmd的命令行窗口下,输入lsnrctl start,回车即启动监听。

2 查看oracle的sid叫什么,比如创建数据库的时候,实例名叫“abc”,那么先手工设置一下oralce的sid,cmd命令窗口中,set ORACLE_SID=abc

3 再输入sqlplus /nolog,回车
再输入 conn / as sysdba;回车

4 再输入startup,回车.这步是启动oracle服务。如果startup启动被告知已经启动了,可以先输入shutdown immediate;等shutdown结束之后,再输入startup。

5 过几秒钟等命令运行完成,就能连接了。这个时候,可以输入”select * from user_tables;”测试一下,看是否有查询结果。

但这里又出现了一个问题,报ora-00119和ora-00132错误,一番搜索之后发现问题根源在于 init.ora.622017233315 这个文件,这个文件的位置根据安装路径有所不同,我的是在 E:\app\admin\orcl\pfile\init.ora.622017233315,这个文件里的local_listener属性的问题:

local_listener=”(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))”

需要把 local_listener的值变成E:\app\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
里对应数据库名称的 ADDRESS 的值,记得加引号

这么操作下来,Ora-12514算是解决了,plsqldev 也可以连接了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值