The*_*ner 2 python oracle cx-oracle oracle12c
我正在尝试通过 cx_Oracle 模块连接到 Oracle 12c。使用以下代码登录可以在 cx_Oracle.connect 方法中未提及模式的情况下使用
import cx_Oracle
ip = 'ip'
port='1521'
SID='orcl'
dsn_tns = cx_Oracle.makedsn(ip, port, SID)
db = cx_Oracle.connect('system', 'password', dsn_tns)
Run Code Online (Sandbox Code Playgroud)
但对于以下方式,它显示 cx_Oracle.SYSDBA 模式的无效登录错误。
db = cx_Oracle.connect('system', 'password', dsn_tns, cx_Oracle.SYSDBA)
Run Code Online (Sandbox Code Playgroud)
错误:
cx_Oracle.DatabaseError: ORA-01017: invalid username/password; logon denied
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?凭据是相同的。我尝试手动登录如下,成功
>sqlplus system/password as sysdba
Run Code Online (Sandbox Code Playgroud)
如果您以sys用户身份连接,则需要使用以下cx_Oracle.SYSDBA模式:
conn = cx_Oracle.connect('sys', 'password', dsn_tns, cx_Oracle.SYSDBA)
ok
conn = cx_Oracle.connect('sys', 'password', dsn_tns)
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Run Code Online (Sandbox Code Playgroud)
但是,如果您以用户system身份连接,则不得使用以下cx_Oracle.SYSDBA模式:
conn = cx_Oracle.connect('system', 'password', dsn_tns)
ok
conn = cx_Oracle.connect('system', 'password', dsn_tns, cx_Oracle.SYSDBA)
ORA-01017: invalid username/password; logon denied
Run Code Online (Sandbox Code Playgroud)
例如,这里解释了用户 sys 和 system 的区别。
| 归档时间: |
|
| 查看次数: |
3531 次 |
| 最近记录: |