很抱歉出现noob问题,但是我是Oracle SQL软件的新手。
我一直在尝试建立与数据库学生的连接(在SQL Developer上创建),但是由于使用的是将要连接到服务器的客户端计算机,因此非常混乱。 / p>
以下是有关连接的信息:
连接名称:LARGER123
用户名:LARGER123
主机名:uxkg265.admin.plent
端口:1520
SID :ticp5076
客户端计算机用户名:r5678
当我打开SQL Plus提示符时,我尝试对用户名进行几种组合以建立连接,但收到相同的错误 ORA-12154错误。
尽管我可能是在用户名字段上进行设置的方式,所以我遵循了Oracle网站的指示:
https://docs.oracle.com/database/121/ADMQS/GUID-1A15D322-B3AC-426A-86A1-EB7590930687.htm#ADMQS045
基本上,它告诉以这种方式“构建”用户名结构:
nick@"dbhost.example.com/orcl.example.com"
其中:“昵称” 是用户; “ dbhost.example.com” 是主机;并且“ orcl.example.com” 是数据库。
因此,在示例之后,我以这种方式输入了用户名并收到错误消息:
LARGER123@"uxkg265.admin.plent/student"
我尝试了不同的方法,包括 Port 和 SID ,但没有成功。
您对我的错误有更好的了解吗?
答案 0 :(得分:0)
您确定有人在尝试连接的地方听吗?我建议您先进行telnet测试。
您说您的服务器的域名为“ uxkg265.admin.plent”
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上的测试系统来说,将其关闭是可以的。对于其他系统,也许不是。)
答案 1 :(得分:0)
ORA-12154是TNS:could not resolve the connect identifier specified
,但是您可能没有使用TNS来解析连接标识符:您是否在客户端计算机上编辑了tnsnames.ora
文件并为SID创建了一个条目,重新尝试连接?可能不是。
代替选择SID,而是选择“服务名称”,然后将Oracle SID放在此处。对于“基本”连接类型,应该显式使用主机/端口和服务名称来建立连接,而不是依赖TNS查找(解析)SID。