oracle 切換用戶操作--or--sys用戶密碼忘記


1、sqlplus中以普通用戶登錄oracle后,

普通用戶的登錄方式:

sqlplus /nolog

conn 用戶名/密碼@IP地址/orcl:1521;

這個時候,想要切換sys用戶,conn sys/密碼@實例名 as sysdba; 執行這個命令切換到sys用戶。    -----默認的sys用戶的密碼為change_on_install,system的密碼為:manager

2、創建用戶,在sys用戶下,執行

CREATE user test identified by test;

3、授權

grant connect,resource,dba to test;   ---注意:這里dba權限是針對dba管理員用戶的,平時給普通用戶賦權的時候,一般conn,resource權限日常就夠了,包括測試人員和開發人員!!!

4. 如果忘記了sys或者system的密碼:

system默認密碼:manager
sys默認密碼:change_on_install

使用SQL Plus登錄數據庫時,system使用密碼manager可直接登錄。
但如果是sys用戶,密碼必須加上as sysdba,即登錄時完整密碼為:change_on_install as sysdba

如果要修改密碼:

在數據庫服務器本地,sqlplus / as sysdba;連接數據庫,然后執行:

alter user system identified by 新的密碼;

用戶已更改。

SQL> alter user sys identified by 新的密碼;

用戶已更改。

如果用戶狀態是鎖定的需要給用戶解鎖:

alter user system account unlock;

5. 客戶端如何連接遠程數據庫服務器的sys用戶:

默認情況下oracle 11g r2是不允許客戶端遠程以sys用戶登錄的,除非你是遠程直接連的數據庫服務器操作系統,然后切換到oracle用戶下,sqlplus /  as sysda登錄;

那么客戶端如何實現遠程可以直接連接數據庫的sys or system用戶呢?

alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;
這個修改完了,因為是靜態參數,要重啟一下數據庫才會生效!

然后:

conn sys/密碼@orcl as sysdba

如果為了系統安全,我們不想讓用戶遠程可以sys登錄,那么可以通過如下命令將默認設置再改回來:

alter system set remote_login_passwordfile=none scope=spfile;

記得重啟數據庫 配置生效!

這里需要注意:

1. SYS用戶是特權用戶,遠程登錄數據庫就要使用TCP/IP協議,這是一個不安全是協議,因此一定要通過口令文件認證方式,這是他唯一的登錄途徑,因此,你只要設置初始化參數REMOTE_LOGIN_PASSWORDFILE=none,就可以禁止SYS遠程登錄數據庫了.

2. system用戶其實就是一個擁有DBA角色的一般用戶,他是通過數據庫認證的,只要數據庫服務器提供遠程服務,他就可以登錄,不知道怎么禁止system用戶遠程登錄!!!

 例如:用system連接的時候,不需要加as sysdba;

SQL> conn system/123456@orcl
Connected.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM