如何使用SQLcl和SQLPlus连接到Oracle数据库,但没有TNSNames.ORA文件?
你有:如何使用SQLcl和SQLPlus连接到Oracle数据库,但没有TNSNames.ORA文件?,oracle,sqlplus,tnsnames,sqlcl,Oracle,Sqlplus,Tnsnames,Sqlcl,你有: Oracle数据库 Oracle客户端安装,包括SQL*Plus #1的TNS信息 但是没有TNSNames.ORA文件,也没有创建和维护一个文件的愿望 如何使SQL*Plus连接正常运行 sqlplus user/password@(description=(address_list=(address=.......ODS))) ()中的文本是您将在TNSNames文件中看到的服务信息。因此,您可以简单地显式地使用TNS条目 注意,如果在Unix中()由shell解释,请使用引号
sqlplus user/password@(description=(address_list=(address=.......ODS)))
()中的文本是您将在TNSNames文件中看到的服务信息。因此,您可以简单地显式地使用TNS条目
注意,如果在Unix中()由shell解释,请使用引号
或者您可以使用EZconnect语法(我的首选方法)
请注意,对于Oracle Database 12/18c多租户体系结构数据库,如果要连接到可插拔数据库,则必须使用/service_名称而不是/SID
还要注意,我们现在有2个命令行界面
SQL*Plus和SQLcl
基于java,是Oracle SQL Developer的精简版本。它支持基于TNS的连接,还支持EZConnect语法。与SQL*Plus相比,它的一个显著优势是不需要安装Oracle客户端
这个问题最初是由汤姆·安回答的
我在这里更新了他的答案,以解决Oracle 12c Multitenant和SQLcl的问题 使用
tnsnames.ora
文件只是四种不同命名方法中的一种,请参见
通常,
ldap
和nis
仅适用于在您的办公场所中运行多个Oracle数据库的情况。@thatjeffsmith已经提供了其他方法,谢谢@KaushikNayak-我们添加了大量现代功能来补充现有的SQL*Plus功能。您可能还喜欢选项卡完成、命令历史记录、DDL和别名(构建自己的命令)功能。
sqlplus user/password@//hostname/service_name
sqlplus user/password@//hostname:port/service_name