如何让PL/SQL连接到本地的ORACLE数据库

时间:2021-11-08 22:57:44
如何让PL/SQL连接到本地的ORACLE数据库
数据库的状态是:刚刚安装完毕,默认的用户名密码也没有改变,安装了PL/SQL和oracle9i客户端和Oracle Database 10g Express Edition

备注:添加 oracle\ora92\network\admin下tnsnames.ora
代码如下
SYSTEM_ME =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = *)
    )
  )
 但是用PL/SQL登陆时出现了ORA-12154 TNS:监听进程不能解析在连接描述中给出的SERVICE_NAME。
下面该不知该怎么操作???

11 个解决方案

#1


(SERVICE_NAME = *)
* 代表什么?

#2


为什么不安装10g客户端呢

#3


SERVICE_NAME有问题。

#4


如何让PL/SQL连接到本地的ORACLE数据库hostname有问题要指向ip的

#5


引用 楼主 zholoo 的回复:
如何让PL/SQL连接到本地的ORACLE数据库
数据库的状态是:刚刚安装完毕,默认的用户名密码也没有改变,安装了PL/SQL和oracle9i客户端和Oracle Database 10g Express Edition

备注:添加 oracle\ora92\network\admin下tnsnames.ora
代码如下
SYSTEM_ME =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = *)
    )
  )
 但是用PL/SQL登陆时出现了ORA-12154 TNS:监听进程不能解析在连接描述中给出的SERVICE_NAME。
下面该不知该怎么操作???

SERVICE_NAME 啊。。。。

#6


SERVICE_NAME和host都改一下。

#7


引用 1 楼 linwaterbin 的回复:
(SERVICE_NAME = *)
* 代表什么?



数据库实例名....

#8


引用 7 楼 devidh 的回复:
Quote: 引用 1 楼 linwaterbin 的回复:

(SERVICE_NAME = *)
* 代表什么?



数据库实例名....

这个不应该是实例名,这个名字是你用PL/SQL连接的时候,指定的连接符。
如何让PL/SQL连接到本地的ORACLE数据库

#9


这个是我的描述符,其中host你也可以用计算机名指定。。
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = SN-201212009)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

#10


引用 1 楼 linwaterbin 的回复:
(SERVICE_NAME = *)
* 代表什么?



server_name 中文叫 服务名,在oracle中就是数据库名,也就是监听的名字!

#11


重新配置下tns,没有什么难度的。

#1


(SERVICE_NAME = *)
* 代表什么?

#2


为什么不安装10g客户端呢

#3


SERVICE_NAME有问题。

#4


如何让PL/SQL连接到本地的ORACLE数据库hostname有问题要指向ip的

#5


引用 楼主 zholoo 的回复:
如何让PL/SQL连接到本地的ORACLE数据库
数据库的状态是:刚刚安装完毕,默认的用户名密码也没有改变,安装了PL/SQL和oracle9i客户端和Oracle Database 10g Express Edition

备注:添加 oracle\ora92\network\admin下tnsnames.ora
代码如下
SYSTEM_ME =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = *)
    )
  )
 但是用PL/SQL登陆时出现了ORA-12154 TNS:监听进程不能解析在连接描述中给出的SERVICE_NAME。
下面该不知该怎么操作???

SERVICE_NAME 啊。。。。

#6


SERVICE_NAME和host都改一下。

#7


引用 1 楼 linwaterbin 的回复:
(SERVICE_NAME = *)
* 代表什么?



数据库实例名....

#8


引用 7 楼 devidh 的回复:
Quote: 引用 1 楼 linwaterbin 的回复:

(SERVICE_NAME = *)
* 代表什么?



数据库实例名....

这个不应该是实例名,这个名字是你用PL/SQL连接的时候,指定的连接符。
如何让PL/SQL连接到本地的ORACLE数据库

#9


这个是我的描述符,其中host你也可以用计算机名指定。。
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = SN-201212009)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

#10


引用 1 楼 linwaterbin 的回复:
(SERVICE_NAME = *)
* 代表什么?



server_name 中文叫 服务名,在oracle中就是数据库名,也就是监听的名字!

#11


重新配置下tns,没有什么难度的。