SHR*_*SHR 5 oracle sqlplus oracle-12c
这似乎是一个奇怪的问题:
如果我有用户demo
使用密码 Pass1234 呼叫
连接到 oracle 11g 时,我可以sqlplus
在命令行中使用密码运行:在数据库主机上:
C:\> sqlplus demo/Pass1234
Run Code Online (Sandbox Code Playgroud)
或者远程机器
C:\> sqlplus demo/Pass1234@<ip>:1521/orcl
Run Code Online (Sandbox Code Playgroud)
我可以这样做而无需在命令行中提供密码并像这样公开它:
C:\> sqlplus demo
Run Code Online (Sandbox Code Playgroud)
然后我得到:
SQL*Plus: Release 11.1.0.7.0 bla bla bla
Copyright (c) bla bla bla
Enter password:
Run Code Online (Sandbox Code Playgroud)
然后我可以手动输入密码。
连接到 Oracle 12c 时,我可以从任何机器(使用密码)像这样连接:
C:\> sqlplus demo/Pass1234@<ip>:1521/pdborcl
Run Code Online (Sandbox Code Playgroud)
我的问题是:如何在不tnsnames.ora
编辑和不在命令行中写入密码的情况下连接到 Oracle 12c ?
我还没有弄清楚是否可以从数据库主机上的 sqlplus 连接到 Oracle 12c,而无需提供 IP 或本地主机,并且无需编辑 tnsnames.ora,就像我在 Oracle 11g 中所做的那样?
更重要的是,我可以在不使用完全连接的情况下从远程机器(甚至到 Oracle 11g)执行此操作吗?
(装置手动给用户和在命令行分贝连接和密码,而不是像使用/NOLOG
在命令,然后:SQL> connect demo/Pass1234@<ip>:1521/pdborcl
)
谢谢!
这个答案基于 a1ex07 评论:
鉴于以下细节:
user name: demo
password: Pass1234
ip: 1.2.3.4
listener port: 1521
oracle SID: orcl
pdb service name: pdborcl
Run Code Online (Sandbox Code Playgroud)
以 sysdba 身份从数据库主机连接到核心数据库:
sqlplus / as sysdba
sqlplus sys as sysdba
sqlplus sys/Pass1234 as sysdba
从数据库主机或远程作为 sysdba 连接到核心数据库:
sqlplus sys@\"1.2.3.4:1521/orcl\" as sysdba
sqlplus sys/Pass1234@1.2.3.4:1521/orcl as sysdba
从数据库主机或远程作为 sysdba 连接到 pdb:
sqlplus sys@\"1.2.3.4:1521/pdborcl\" as sysdba
sqlplus sys/Pass1234@1.2.3.4:1521/pdborcl as sysdba
从数据库主机或远程连接到 pdb 作为演示(普通用户):
sqlplus demo@\"1.2.3.4:1521/pdborcl\"
sqlplus demo/Pass1234@1.2.3.4:1521/pdborcl