創建用戶:create user 用戶名 identified by 密碼;
SQL> create user scw identified by 123; 用戶已創建。 SQL>
在oracle中創建用戶只能由管理員或者具有管理員的權限的用戶創建
修改密碼:
1.修改自己的密碼:
SQL> passw; 更改 SCW 的口令 舊口令: 新口令: 重新鍵入新口令: 口令已更改 SQL> conn scw/123; ERROR: ORA-01017: invalid username/password; logon denied 警告: 您不再連接到 ORACLE。 SQL> conn scw/234; 已連接。
2.修改其他用戶密碼 需要權限;
SQL> conn system/123; 已連接。 SQL> alter user scw identified by 123; 用戶已更改。 SQL>
解鎖用戶/鎖定用戶:
SQL> alter user scw account unlock; 用戶已更改。 SQL> conn scw/123; 已連接。 SQL> conn system/123; 已連接。 SQL> alter user scw account lock; 用戶已更改。 SQL> conn scw/123; ERROR: ORA-28000: the account is locked 警告: 您不再連接到 ORACLE。
刪除用戶:
drop user 用戶名; 如果當前用戶擁有數據庫表、視圖、序列等等,刪除用戶就需要指定關鍵字:cascade. drop user zhangsan cascade;
授權:
新建的用戶是沒有任何權限的,包括連接數據庫的權限。
新創建的用戶是沒有任何權限的,直接登錄會報如下錯誤:
SQL> conn scw/123;
ERROR:
ORA-01045: user SCW lacks CREATE SESSION privilege; logon denied 警告: 您不再連接到 ORACLE。
如果新建的用戶想要連接數據庫,就需要被賦予權限,只有管理員才能賦予新用戶權限。
系統權限:create table,create session,drop user,drop table等等
角色權限:dba 管理員
connect:連接數據庫
resource: 創建表的權限
賦予用戶連接數據庫的權限:
grant create session to zhansgan;
SQL> conn system/123;
已連接。
SQL> grant create session to scw; 授權成功。 SQL> conn scw/123; 已連接。 SQL>
system賦予用戶dba的角色:
SQL> grant dba to scw;
grant dba to scw * 第 1 行出現錯誤: ORA-01031: 權限不足 SQL>
SQL> conn system/123;
已連接。
SQL> grant dba to scw;
授權成功。
SQL>
(dba是數據庫管理員
它除了重啟數據庫 修改字符集的權限沒有外 具有其它全部權限)
DBA: 數據庫管理員
用Scott給其他用戶查看的權限:
SQL> conn scott/123; 已連接。 SQL> grant select on emp to scw; 授權成功。 SQL> conn scw/234; 已連接。 SQL> select * from scott.emp;
用system給其他用戶查看的權限:
SQL> grant select on scott.emp to scw; grant all on scott.emp to scw; (查看所有表)
授權成功。
SQL>
給其他用戶授權的能力:
with admin option: 授予系統相關的admin權限 with grant option:授予對象相關的grant 權限
注意多級權限的回收;
撤銷權限:
revoke 權限 from 用戶
注意:多級權限的回收:
對於對象權限,sys——>abc1——>abc3,當sys回收abc1權限的時候,abc3的權限也被回收了。
總結:對於系統權限,sys——>abc1——>abc2,然后由sys將abc1的權限回收,abc2依然可以連接數據庫。
對表的操作:
查看當前用戶的所有表:
SQL> conn scott/123; 已連接。 SQL> select * from user_tables;
查看當前用戶所有表的表名:
SQL> select table_name from user_tables; TABLE_NAME ------------------------------------------------------------ SALGRADE BONUS EMP DEPT
查看用戶:
查看所有用戶(必須要有管理員權限):
Select *from all_users; 查詢dba:select * from dba_users; 查詢當前用戶的信息:select * from user_users;
查看權限:
查詢所有具有系統權限的dba:
Select *from dba_sys_privs where grantee='DBA';
查看所有角色role;
Select *from dba_roles;
profile管理用戶
u 創建profile文件與指定給用戶
案例1. 如果用戶連續3次登陸失敗,鎖定用戶,鎖定時間2天.lock
步驟:
1.先創建一個profile文件
create profile lock_account(文件名) limit failed_login_attempts3 password_lock_time 2;
2.將profile文件指定給用戶
alter user abc2 profilelock_account;
3.abc2連續三次登陸失敗,賬號鎖定。
4. 解鎖abc2用戶 alter userabc2 account unlock;(管理員身份解鎖)
u 解除用戶的profile文件
Alter user abc2 profile default;
案例2:用戶每隔10天修改密碼,寬限2天。
步驟:
1.sys管理員連接數據庫:conn sys/system as sysdba;
2.新建profile文件,用來限制用戶十天修改密碼,寬限期是2天。
create profile change_pwd limit password_life_time 10password_grace_time 2;
3.將profile配置文件指定給相應的用戶
Alter user abc2profile change_pwd;
案例3:限制用戶修改密碼不能使用以前用過的密碼
步驟:
1.sys管理員連接數據庫:conn sys/system as sysdba;
2.新建profile文件,限制用戶修改密碼,不能使用用過的密碼
Create profilepassword_history limit password_life_time 10 password_grace_time 2 passworh d_reuse_time 2;
3.abc2連接數據庫,然后連續兩次修改密碼:
u 查詢所有的profile文件
select *from dba_profiles;
u 刪除profile文件
drop profileprofile文件名;
drop profilepassword_history;
如果profile文件已經指定給用戶了,就需要加上cascade關鍵字。
SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2; 配置文件已創建 SQL> alter user scw profile lock_account; 用戶已更改。
SQL> drop profile lock_act; 配置文件已刪除。
SQL> conn system/123; 已連接。 SQL> alter user scw account unlock; 用戶已更改。
SQL> conn scw/111; ERROR: ORA-01017: invalid username/password; logon denied 警告: 您不再連接到 ORACLE。 SQL> conn scw/111; ERROR: ORA-01017: invalid username/password; logon denied SQL> conn scw/111; ERROR: ORA-01017: invalid username/password; logon denied SQL> conn scw/123; ERROR: ORA-28000: the account is locked SQL> alter userabc2 account unlock;
進入SQL Plus
要想使用sqlplus,自然得先打開sqlplus界面,打開界面有兩種方式
⦁ 從開始菜單中的oracle安裝目錄直接打開,如下圖;

選擇SQL Plus快捷方式,會進入到sqlplus界面,進入之前會讓你先登錄,

⦁ 從cmd命令窗口進入(如何打開cmd界面不再詳述,不會的,出門右轉去問度娘),如下圖

連接數據庫
連接數據庫也有兩種方式
⦁ 進入sqlplus界面或者在cmd界面輸入指令sqlplus,都會提示“請輸入用戶名”,如下圖
開始菜單打開的

CMD打開的

在cmd界面把sqlplus和登錄信息一起輸入,直接登錄到數據庫,如下圖;

到這里,就表示連接成功啦
用戶解鎖
首先必須使用system登錄,因為只有數據庫管理員才有修改用戶狀態的權限,比如我要解鎖scott賬戶;

切記:后面的commit一定不要忘了,否則是無效滴
用戶加鎖
這個可能不太常用,用戶解鎖會用的比較多,但是還是說一下,也以scott賬戶舉栗;

切記:和解鎖時一樣,后面的commit一定不要忘了,否則是無效滴
修改用戶密碼
這個還是很常用滴,話不多說,往下看圖;

切記:還是commit別忘了,>_<;
顯示和設置環境變量
Linesize:用於控制每行顯示多少個字符,默認顯示80個字符
Set linesize 1000;
