Oracle數據庫系統權限管理

一、開啓Oracle監聽 sql

C:\Users\Administrator>lsnrctl start session

二、啓用Oracle實例 ide

C:\Users\Administrator>oradmin -starup -sid orcl spa

3、用超級管理員身份登錄進去 it

C:\Users\Administrator>sqlplus / as sysdba             //用超級管理員身份登錄進去 io

出現如下界面表示登錄成功 table

C:\Users\Administrator>sqlplus / as sysdba class

SQL*Plus:Release 11.2.0.2.0 Production on 星期六 10月 27 10:58:03 2012 登錄

Copyrigth(c) 1982, 2010,Oracle. All rights reserved. select

鏈接到:

Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production

SQL>show user;

USER爲"SYS"

SQL>

四、用管理員身份建立一個普通用戶

SQL>create user lisi;

create user lisi

                 *

第一行出現錯誤:

ORA-01938:必須爲 CREATE USER 指定 IDENTIFIED BY

提示錯誤緣由是建立lisi用戶時沒有設置密碼,identified爲密碼的意思。

建立一個用戶名爲lisi,密碼爲lisi的用戶:

SQL>create user lisi identified by lisi;

用戶已建立。

SQL> 

五、使用用戶lisi進行登陸

 

C:\Users\Administrator>sqlplus / as sysdba

SQL*Plus:Release 11.2.0.2.0 Production on 星期六 10月 27 11:27:03 2012

Copyrigth(c) 1982, 2010,Oracle. All rights reserved.

ERROR:

ORA-01045:user LISI lacks CREATE SESSION privilege; logon denied

請輸入用戶名:

 

出現以上提示信息:用戶lisi沒有建立session的權限,登陸被決絕了。意思是雖然存在lisi這個用戶,可是lisi這個用戶沒有登陸會話這個權限。因此必需要管理員給lisi這個用戶受權,lisi這個用戶纔有登陸會話的權限。

6、用超級管理員給lisi用戶授予create session的權限

SQL>grant create session to lisi;

受權成功。

grantOracle權限中的關鍵字

七、再用lisi用戶登錄一次

C:\Users\Administrator>sqlplus / as sysdba

SQL*Plus:Release 11.2.0.2.0 Production on 星期六 10月 27 11:27:03 2012

Copyrigth(c) 1982, 2010,Oracle. All rights reserved.

鏈接到:

Oracle Database 11g Express Edition Release 11.2.0.2.0 -Production

SQL>

 

出現以上提示則表示登錄成功。

八、lisi用戶建立數據表

SQL>create table mytable (id int);

create table mytable (id int)

*

第一行出現錯誤:

ORA-01031:權限不足

出現以上提示,表示用戶lisi沒有建立表的權限。

九、管理員授予lisi建立表的權限

SQL>grant create table to lisi;

受權成功。

十、再用lisi用戶建立表

 

SQL>create table mytable (id int);

create table mytable (id int)

*

第一行出現錯誤:

ORA-01031:對錶空間 ‘SYSTEM’ 無權限

 

用戶lisi有建立表的權限,沒有使用表空間的權限,最終仍是建立不了表,這就比如你有我房間的鑰匙,可是沒有我家大門的鑰匙,你最終仍是進不了個人房間。

十一、管理員授予lisi用戶不受上限表空間的使用權限,也就是說給予lisi用戶不受限制使用表空間的權限

 

SQL>grant unlimited tablespace  to lisi;

受權成功。

 

十二、再用lisi用戶建立表

SQL>create table mytable (id int);

表已建立。

出現以上提示表示建立表成功。

1三、向表mytable插入一列數據

SQL>insert into mytable values (1);

已建立1行。

1四、查詢剛纔數據

SQL>select*from mytable;

                  ID

-------------------

                   1

1五、刪除mytable

SQL>drop table mytable;

表已刪除。

當一個用戶有使用表空間的權限,就有建立表的權限,那麼這個表就屬於當前用戶的,用戶就能夠對這個表有增、刪、該、查、刪除表操做的權限,就不須要對這個表再受權了。

1六、管理員撤銷list用戶的創表權限

SQL>revoke create table from lisi;

撤銷成功。

1七、查看當前lisi用戶擁有哪些系統權限

SQL>select*from user_sys_privs;

USERNAME               PRIVILEGE                        ADMIN

------------------------------------------------------------------------

LISI                         CREATE SESSION                NO

LISI                         UNLIMITED TABLESPACE     NO

-----------------------------------------------------------------------

SQL>

以上提示信息表示:lisi用戶擁有建立session和無限制使用表空間的權限。

1八、管理員撤銷lisi用戶不受限制使用表的權限

SQL>revoke unlimited tablespace from lisi;

撤銷成功。

相關文章
相關標籤/搜索