資料庫使用者

2021-07-09 23:18:12 字數 2594 閱讀 6145



sql語句分為三類:dml、ddl、dcl,之前已經講解完了dml和ddl,現在就差dcl操作的,dcl主要表示的是資料庫的控制語句,控制的就是操作許可權,而在dcl之中,主要有兩個語法:grant、revoke;

許可權的操作基礎是需要有使用者的,而這個時候就需要通過乙個新的使用者進行演示,而要想建立新使用者則首先必須是具備管理員許可權的sys、system兩個使用者操作。

範例:建立乙個dog使用者,密碼為wangwang

conn sys/change_on_install assysdba;

create user dog identified by wangwang;

此時乙個新的使用者就建立完成了。

注意:「ora-00988:口令缺失或無效」錯誤,這種情況通常發生於建立 oracle 例程時指定了非正常的全域性資料庫名稱或系統使用者密碼。請注意全域性資料庫名稱不能以數字開頭,口令密碼也不能由數字開頭。

oracle對密碼的要求如下:

但是此時這個新建立的使用者並不能登入,會提示如下的錯誤資訊:

ora-01045: user dog lacks create session privilege; logon denied
提示使用者現在沒有建立session的許可權,在之前曾經解釋過,對於sqlplusw而言,每乙個使用者都表示乙個session,如果沒有建立session的許可權就意味著不能登入,所以下面要授權。

範例:將create session的許可權給dog使用者

grant create session to dog;
現在新使用者登入成功之後,下面就可以執行表的建立操作。

createsequence myseq;

create tablemytab(

id number primary key,

name varchar2(50));

解釋:關於資料表的儲存問題在oracle之中所有的資料表都是儲存在硬碟上的,但不是每一張資料表都儲存在硬碟上的,而是表空間儲存在硬碟上,而資料表儲存在表空間之中。

如果把硬碟表示成整個乙個圖書館的話,那麼表空間就表示每乙個書櫃,每一張表就表示櫃子上的一本書。

範例:將建立表的許可權給dog使用者

grant create table to dog;
此時只是將資料表的建立許可權給了dog使用者,但是並沒有把錶空間的操作許可權給dog使用者,所以使用者仍然無法建立表,因為表沒有地方可以儲存。

為了解決使用者的授權操作,在oracle之中為使用者提供了許多的角色,每乙個角色會包含多個許可權,而角色主要有兩個:connect、resource;

範例:將connect和resource to dog;

grant connect,resource to dog;
但是現在一旦存在了使用者的操作,那麼就需要有使用者的管理操作,最簡單的乙個功能,使用者有可能丟掉自己的密碼。

範例:修改密碼

alter user dog identified by miaomiao;
但是當管理員為乙個使用者重置乙個密碼之後,往往會希望使用者在第一次登入的時候可以修改密碼,所以此時可以通過如下的命令讓密碼失效:

alter user dog password expire;
也可以控制乙個使用者的鎖定操作:

alter userdog account lock;

alter user dog account unlock;

以上是針對於乙個基本的使用者操作,但是在之前也學習過,不同的使用者可以訪問其他使用者的資料表,此時只需要加上完整的「使用者名稱.表名稱」即可。

範例:使用dog使用者查詢scott.emp表

select * from scott.emp;
但是現在卻無法查詢,此時需要將scott使用者的許可權授予dog使用者才可以讓dog使用者訪問scott使用者的資源,主要的許可權有四個:insert、delete、update、select。

範例:將scott.emp表的select和insert許可權給dog使用者

grant select,insert on scott.emp to dog;
既然現在有授權的功能,那麼就可以進行許可權的**,許可權的**使用revoke指令。

範例:**dog使用者的許可權

revoke select,insert on scott.emp fromdog;

revoke connect,resource,create table,create session from dog;

既然使用者連許可權都沒了,那麼按照中國的一句話:「捲鋪蓋走人」。

drop user dog cascade;
以上的所有操作都是由dba負責。

資料庫使用者

使用和共享資料庫的人 1.建立資料庫額備份資料庫。2.對資料表操作,增刪改查。3.對資料表中的字段操作,查詢和更改。1.在mysql中新建乙個使用者,使用者名稱abc,登入主機為 localhost 口令為123456。2.檢視mysql使用者表 select from mysql.user 新增加...

資料庫 MYSQL MySql資料庫使用者密碼的修改

環境 作業系統 win2003 mysql mysql ver 12.22 distrib 4.0.18,for win95 win98 i32 思想 為了安全加密需要設定mysql資料庫相關使用者的密碼 mysql資料庫的密碼都是儲存在mysql資料庫例項的user表中的password欄位裡,通...

建立資料庫使用者

建立表空間 create tablespace 表空間名 datafile d 表空間名.dbf size 20m autoextend on next 10m 建立臨時表空間 create temporary tablespace 臨時表空間名 tempfile d myself.ldf size...