Oracle
如何在命令行中不使用密碼從 sqlplus 連接到 oracle 12c
這似乎是一個奇怪的問題:
如果我有使用者
demo
使用密碼 Pass1234 呼叫連接到 oracle 11g 時,我可以
sqlplus
在命令行中使用密碼執行:在 DB 主機上:C:\> sqlplus demo/Pass1234
或遠端機器
C:\> sqlplus demo/Pass1234@<ip>:1521/orcl
我可以這樣做而無需在命令行中提供密碼並像這樣公開它:
C:\> sqlplus demo
然後我得到:
SQL*Plus: Release 11.1.0.7.0 bla bla bla Copyright (c) bla bla bla Enter password:
然後我可以手動輸入密碼。
連接到 Oracle 12c 時,我可以從任何機器上這樣連接(使用密碼):
C:\> sqlplus demo/Pass1234@<ip>:1521/pdborcl
我的問題是:如何在不
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
以 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
從 db 主機或遠端作為 sysdba 連接到 pdb:
- 手動密碼:
sqlplus sys@\"1.2.3.4:1521/pdborcl\" as sysdba
- 命令中的密碼:
sqlplus sys/Pass1234@1.2.3.4:1521/pdborcl as sysdba
從 db 主機或遠端連接到 pdb 作為展示(普通使用者):
- 手動密碼:
sqlplus demo@\"1.2.3.4:1521/pdborcl\"
- 命令中的密碼:
sqlplus demo/Pass1234@1.2.3.4:1521/pdborcl