日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

图解Oracle用户管理

發(fā)布時(shí)間:2025/4/14 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图解Oracle用户管理 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一 操作實(shí)例

首先以system用戶登錄;



創(chuàng)建用戶dog,密碼為wangwang;



用dog登錄,不能登錄;



需要授予create session權(quán)限,才能登錄;



dog登錄成功;



dog創(chuàng)建表,不能創(chuàng)建;



需要授予create table權(quán)限;此時(shí)還不能創(chuàng)建表,因?yàn)檫€不能對(duì)表空間操作;再授予connect和resource;



dog創(chuàng)建表成功;



口令可更改;可以使密碼失效;可以鎖定和解鎖用戶;



dog登錄,因?yàn)榍懊嬖O(shè)置了口令失效,dog登錄時(shí)可更改口令;



oracle中一個(gè)用戶可訪問(wèn)另一個(gè)用戶的表;

dog訪問(wèn)scott的表,出錯(cuò);



還需要授權(quán);授權(quán)后訪問(wèn)scott的表成功;



收回權(quán)限;

下圖命令打錯(cuò)了;



從system用戶撤銷dog的權(quán)限;



用戶無(wú)用可刪除之;



二 Oracle用戶管理

http://www.cnblogs.com/mchina/archive/2012/09/12/2678091.html


SQL語(yǔ)句分為三類:DML、DDL、DCL,之前已經(jīng)講解完了DML和DDL,現(xiàn)在就差DCL操作的,DCL主要表示的是數(shù)據(jù)庫(kù)的控制語(yǔ)句,控制的就是操作權(quán)限,而在DCL之中,主要有兩個(gè)語(yǔ)法:GRANT、REVOKE;

權(quán)限的操作基礎(chǔ)是需要有用戶的,而這個(gè)時(shí)候就需要通過(guò)一個(gè)新的用戶進(jìn)行演示,而要想創(chuàng)建新用戶則首先必須是具備管理員權(quán)限的sys、system兩個(gè)用戶操作。

范例:創(chuàng)建一個(gè)dog用戶,密碼為wangwang

CONN sys/change_on_install AS SYSDBA;
CREATE USER dog IDENTIFIED BY wangwang;
此時(shí)一個(gè)新的用戶就創(chuàng)建完成了。

注意:“ORA-00988:口令缺失或無(wú)效” 錯(cuò)誤,這種情況通常發(fā)生于創(chuàng)建 Oracle 例程時(shí)指定了非正常的全局?jǐn)?shù)據(jù)庫(kù)名稱或系統(tǒng)用戶密碼。請(qǐng)注意全局?jǐn)?shù)據(jù)庫(kù)名稱不能以數(shù)字開(kāi)頭,口令密碼也不能由數(shù)字開(kāi)頭。

Oracle對(duì)密碼的要求如下:

系統(tǒng)用戶(SYS、SYSTEM)口令長(zhǎng)度不能小于7個(gè)字符;
密碼由1 到 30 個(gè)字符 (characters)組成;
必須以字母開(kāi)頭,不能是符號(hào)或者數(shù)字;
只接受字母,數(shù)字,以及三個(gè)符號(hào) "#", "_" and "$";
密碼不能包含像"SELECT","DELETE","CREATE"這類的 Oracle/SQL 關(guān)鍵字;
但是此時(shí)這個(gè)新創(chuàng)建的用戶并不能登錄,會(huì)提示如下的錯(cuò)誤信息:

ORA-01045: user DOG lacks CREATE SESSION privilege; logon denied
提示用戶現(xiàn)在沒(méi)有創(chuàng)建SESSION的權(quán)限,在之前曾經(jīng)解釋過(guò),對(duì)于sqlplusw而言,每一個(gè)用戶都表示一個(gè)SESSION,如果沒(méi)有創(chuàng)建SESSION的權(quán)限就意味著不能登錄,所以下面要授權(quán)。

范例:將CREATE SESSION的權(quán)限給dog用戶

GRANT CREATE SESSION TO dog;
現(xiàn)在新用戶登錄成功之后,下面就可以執(zhí)行表的創(chuàng)建操作。

CREATE SEQUENCE myseq;
CREATE TABLE mytab(
  id NUMBER PRIMARY KEY,
  name VARCHAR2(50)
);
解釋:關(guān)于數(shù)據(jù)表的保存問(wèn)題

在Oracle之中所有的數(shù)據(jù)表都是保存在硬盤上的,但不是每一張數(shù)據(jù)表都保存在硬盤上的,而是表空間保存在硬盤上,而數(shù)據(jù)表保存在表空間之中。

如果把硬盤表示成整個(gè)一個(gè)圖書(shū)館的話,那么表空間就表示每一個(gè)書(shū)柜,每一張表就表示柜子上的一本書(shū)。

范例:將創(chuàng)建表的權(quán)限給dog用戶

GRANT CREATE TABLE TO dog;
此時(shí)只是將數(shù)據(jù)表的創(chuàng)建權(quán)限給了dog用戶,但是并沒(méi)有把表空間的操作權(quán)限給dog用戶,所以用戶仍然無(wú)法創(chuàng)建表,因?yàn)楸頉](méi)有地方可以保存。

為了解決用戶的授權(quán)操作,在Oracle之中為用戶提供了許多的角色,每一個(gè)角色會(huì)包含多個(gè)權(quán)限,而角色主要有兩個(gè):CONNECT、RESOURCE;

范例:將CONNECT和RESOURCE TO dog;

GRANT CONNECT,RESOURCE TO dog;
但是現(xiàn)在一旦存在了用戶的操作,那么就需要有用戶的管理操作,最簡(jiǎn)單的一個(gè)功能,用戶有可能丟掉自己的密碼。

范例:修改密碼

ALTER USER dog IDENTIFIED BY miaomiao;
但是當(dāng)管理員為一個(gè)用戶重置一個(gè)密碼之后,往往會(huì)希望用戶在第一次登錄的時(shí)候可以修改密碼,所以此時(shí)可以通過(guò)如下的命令讓密碼失效:

ALTER USER dog PASSWORD EXPIRE;
也可以控制一個(gè)用戶的鎖定操作:

ALTER USER dog ACCOUNT LOCK;

ALTER USER dog ACCOUNT UNLOCK;
以上是針對(duì)于一個(gè)基本的用戶操作,但是在之前也學(xué)習(xí)過(guò),不同的用戶可以訪問(wèn)其他用戶的數(shù)據(jù)表,此時(shí)只需要加上完整的“用戶名.表名稱”即可。

范例:使用dog用戶查詢scott.emp表

SELECT * FROM scott.emp;
但是現(xiàn)在卻無(wú)法查找,此時(shí)需要將scott用戶的權(quán)限授予dog用戶才可以讓dog用戶訪問(wèn)scott用戶的資源,主要的權(quán)限有四個(gè):INSERT、DELETE、UPDATE、SELECT。

范例:將scott.emp表的SELECT和INSERT權(quán)限給dog用戶

GRANT SELECT,INSERT ON scott.emp TO dog;
既然現(xiàn)在有授權(quán)的功能,那么就可以進(jìn)行權(quán)限的回收,權(quán)限的回收使用REVOKE指令。

范例:回收dog用戶的權(quán)限

REVOKE SELECT,INSERT ON scott.emp FROM dog;
REVOKE CONNECT,RESOURCE,CREATE TABLE,CREATE SESSION FROM dog;
既然用戶連權(quán)限都沒(méi)了,那么按照中國(guó)的一句話:“卷鋪蓋走人”。

DROP USER dog CASCADE;
以上的所有操作都是由DBA負(fù)責(zé)。

總結(jié)

以上是生活随笔為你收集整理的图解Oracle用户管理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。