<FONT size=3>新手:在cmd下連接oracle 10g,分別用了以下兩種方法:1.conn sys/change_on_install as sysdba;2.conn sys/sys as sysdba 都能連接上,然后又隨便用了一個用戶名/密碼,也能連接上,這是怎么回事?是不是用sysdba身份連接對用戶名和密碼沒有要求?。空埜魑桓呤种更c,不勝感激!</FONT>
2 回答

人到中年有點甜
TA貢獻1895條經驗 獲得超7個贊
oracle登陸認證方式分為兩種: 1、os認證 2、密碼文件認證方式。 os模式的開關在 %oracle_home%/network/admin/sqlnet.ora 文件。 SQLNET.AUTHENTICATION_SERVICES= (NTS) 如果上面的指令存在或沒被注銷掉,則系統默認優先使用os認證方式。 (修改認證方式后,直接保存,可以立即生效,不必reboot oracle) 密碼文件的作用是認證方式設置為2時,如果想在網絡上進行 startup等操作時,因為instance沒有啟動,所以不能在表里查詢帳號信息。 就設計了密碼文件來驗證帳號信息。 可以使用 connect / as sysdba 命令,如果能登陸,則說明使用了os認證方式。 如果使用了密碼文件認證方式,則登陸使用的帳號和密碼必須存儲在密碼文件中(sys用戶已經默認存儲了)。 以sysdba身份登陸 執行 grant sysdba to xxx 則該帳號將被存儲至密碼文件中。 可以使用下面的sql進行查看是否存儲至密碼文件。 select * from v$pwfile_users; 如果帳號出現在記錄中,則說明存儲成功。 使用 connect xx/xx as sysdba 命令即可登陸系統。
添加回答
舉報
0/150
提交
取消