首页 > 解决方案 > SQL*Plus 连接设置:ORA-12154 错误

问题描述

很抱歉这个菜鸟问题,但我是 Oracle SQL 软件的新手。

我一直在尝试创建与我的数据库学生的连接(在 SQL Developer 上创建),但由于我使用的是将连接到服务器的客户端计算机,所以我感到非常困惑。

以下是有关连接的信息:

连接名称:LARGER123

用户名:LARGER123

主机名:uxkg265.admin.plent

端口:1520

SID : ticp5076

客户端计算机用户名:r5678

在此处输入图像描述

当我打开 SQL Plus 提示时,我在用户名上尝试了几种组合以建立连接,但得到了相同的错误ORA-12154 Error

我认为这可能是我在用户名字段上设置内容的方式,所以我按照 Oracle 网站上的说明进行操作:

https://docs.oracle.com/database/121/ADMQS/GUID-1A15D322-B3AC-426A-86A1-EB7590930687.htm#ADMQS045

基本上它告诉以这种方式“构建”用户名结构:

   nick@"dbhost.example.com/orcl.example.com"

其中:“nick”是用户;“dbhost.example.com”是主机;“ orcl.example.com 是数据库。

因此,按照示例,我以这种方式输入用户名并出现错误:

   LARGER123@"uxkg265.admin.plent/student"

我尝试了不同的方法,包括端口SID,但没有成功。

你对我的错误有更好的了解吗?

标签: oracleoracle-sqldevelopersqlplus

解决方案


你确定有人在你试图连接的地方听吗?我建议您先使用 telnet 进行测试。

你说你的服务器的域名是“uxkg265.admin.plent”</p>

nslookup uxkg265.admin.plent

我刚刚检查了我的IP地址,发现:

$ nslookup $(hostname)
Server:         xxx.xxx.xxx.xxx
Address:        xxx.xxx.xxx.xx##53
Name:   mydomain.myorg.com
Address: 192.168.56.1

我只是尝试连接到我的 oracle 实例并得到:

$ telnet  192.168.56.1 1521
Trying 192.168.56.1...
Connected to 192.168.56.1
Escape character is '^]'.
^]
telnet> quit
Connection closed.

如果我尝试到错误的端口,我会得到:

$ telnet  192.168.56.1 1522
Trying 192.168.56.1...
telnet: connect to address 192.168.56.1: Connection refused

我能够连接到:

sqlplus myoracle/testpass@192.168.56.1:1521/UPGR

其中 UPGR 是服务名称。

我还可以联系到:

sqlplus myoracle/testpass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.1)(PORT=1521))(CONNECT_DATA=(SID=UPGR)))"

以 UPGR 作为 SID。

最初我遇到了一些麻烦,因为我的 Oracle Linux 版本启用了 iptables,这使我无法使用 sqlplus 进行连接。一旦我禁用了这种保护,我就可以使用 Oracle。

sudo service iptables stop
sudo chkconfig iptables off

(请记住,iptables 是有目的的。对于我在 VirtualBox 中的 PC 上运行的测试系统,将其关闭是可以的。对于其他系统,可能不是。)


推荐阅读