a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 82|回复: 0

[综合] Oracle辅导:oracle用户创建及权限设置

[复制链接]
发表于 2012-8-4 13:54:49 | 显示全部楼层 |阅读模式
Oracle辅导:oracle用户创建及权限设置! p! @( V+ A, C0 e
权限:
+ H7 K1 k0 k  p: y2 Xcreate session
2 `) n3 m% e  U) X$ Tcreate table
- s* p; d' K- `, r! s- ~' Cunlimited tablespace
$ q2 f! P4 a  l8 Sconnect
1 ^+ {( e( s' F0 e' Qresource+ S) A6 I' o3 Q5 M. b; D; `
dba- x) Z# j$ j9 X  Z, |6 [
例:
& A0 O* y3 k$ i( S#sqlplus /nolog
) B* }' e3 m0 x6 [SQL》 conn / as sysdba;
! M% K  W0 I! @: pSQL》create user username identified by password0 h* v2 d& ~3 X6 t0 b& j9 \  P0 E
SQL》 grant dba to username;+ Y  \; }- S' {4 a
SQL》 conn username/password
7 A. U" }+ F8 T/ S, S- aSQL》 select * from user_sys_privs;
/ s0 f$ l- Z/ X: ]我们将从创建Oracle用户权限表开始谈起,然后讲解登陆等一般性动作,使大家对Oracle用户权限表有个深入的了解。$ K% k1 m7 ]+ |" U& C
一、创建
  h/ Q, w8 V: x6 ^$ \sys;//系统管理员,拥有最高权限5 p$ Q; W8 j% F2 N2 F; j
system;//本地管理员,次高权限
3 {# D0 c( v, i+ R- d( ^6 C9 Vscott;//普通用户,密码默认为tiger,默认未解锁  B  {# p, E9 h& x( ^7 w
二、登陆: U% s1 ]+ {2 s( x: m
sqlplus / as sysdba;//登陆sys帐户4 d  z9 v" O+ P6 l8 O$ g* N
sqlplus sys as sysdba;//同上/ d9 z5 N2 Q1 o8 d1 r; o
sqlplus scott/tiger;//登陆普通用户scott
: s6 b& X4 V  E, A/ B# g& X6 B% ^三、管理用户
, b6 `* c" w6 R! w* R$ J* D& Mcreate user zhangsan;//在管理员帐户下,创建用户zhangsan. n7 {4 _8 ~  S& l7 B4 o& a& A
alert user scott identified by tiger;//修改密码
! k5 W' F8 a) ?$ z* _四,授予权限4 i) f3 Z/ U3 @1 c' A# z' {
1、默认的普通用户scott默认未解锁,不能进行那个使用,新建的用户也没有任何权限,必须授予权限
  U0 @  V. ~2 ]7 N- U/*管理员授权*/5 r7 i( F4 {, L) R5 ~& y% S. r
grant create session to zhangsan;//授予zhangsan用户创建session的权限,即登陆权限
5 Y- k- _0 p$ H& W; M& K. ?2 n: Xgrant unlimited session to zhangsan;//授予zhangsan用户使用表空间的权限
( t( n) {9 Q1 |. h- S4 Agrant create table to zhangsan;//授予创建表的权限! w$ t- {' a. S& D( ^# p. ]: f! g3 Z8 ^
grante drop table to zhangsan;//授予删除表的权限6 z( y5 i+ }$ d, {

( |% V. L* _2 D1 v
9 y# d* ]8 l9 v& o5 Lgrant insert table to zhangsan;//插入表的权限, T4 ]# ^1 O, K, `% T
grant update table to zhangsan;//修改表的权限
# Q" C9 ^9 z2 K& \: p0 Ygrant all to public;//这条比较重要,授予所有权限(all)给所有用户(public)
# f/ G9 y. Y2 P4 D8 C7 N2、oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权
6 [) D# H& |; w) W+ F. ?& G/*oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的*/
/ j$ Q  e% v! K1 f4 I0 t% Ygrant select on tablename to zhangsan;//授予zhangsan用户查看指定表的权限, }8 B7 V& F9 ]* a$ E2 `
grant drop on tablename to zhangsan;//授予删除表的权限
! C+ ~! L2 z' y* H  ngrant insert on tablename to zhangsan;//授予插入的权限& F/ p( e/ ?) C* V
grant update on tablename to zhangsan;//授予修改表的权限
: z1 i6 ~' M2 E" ~6 ugrant insert(id) on tablename to zhangsan;
/ S! H( w' V$ b) G1 N. {grant update(id) on tablename to zhangsan;//授予对指定表特定字段的插入和修改权限,注意,只能是insert和update
  z9 Z0 `" Y8 b/ x7 L& z' g0 rgrant alert all table to zhangsan;//授予zhangsan用户alert任意表的权限
' A/ y1 f  o) M% n, y7 d7 B# q2 s五、撤销权限4 P9 y# K/ c/ s2 I8 `2 a
基本语法同grant,关键字为revoke
3 J$ }( q7 T0 N4 T3 D) d六、查看权限
0 i2 G7 J# D' U0 W. @' \select * from user_sys_privs;//查看当前用户所有权限: V2 c; r& J# z0 p& Y9 v4 a* M# I
select * from user_tab_privs;//查看所用用户对表的权限; N8 M3 t$ n7 `2 c' O6 f: H7 k
七、操作表的用户的表. t3 i( `& `3 O
/*需要在表名前加上用户名,如下*/7 v6 i/ A& v5 L3 [# W3 k5 w
select * from zhangsan.tablename  _; C2 r1 p1 U. f
八、权限传递
& {# `$ i" F- ~2 K9 X9 `即用户A将权限授予B,B可以将操作的权限再授予C,命令如下:! r6 W& O: a/ }4 p
grant alert table on tablename to zhangsan with admin option;//关键字 with admin option1 |8 a' \: M" _9 d4 [8 e
grant alert table on tablename to zhangsan with grant option;//关键字 with grant option效果和admin类似5 \& d, k* D/ x
九、角色
! i! R- M  l& p" k1 U0 d角色即权限的集合,可以把一个角色授予给用户
  U$ u( s7 g) Fcreate role myrole;//创建角色! V: p$ _* X5 L
grant create session to myrole;//将创建session的权限授予myrole$ R% Y; }2 y: ~/ h7 P3 o$ N  n
grant myrole to zhangsan;//授予zhangsan用户myrole的角色
' c* r* z1 m/ L% t% x9 a# Wdrop role myrole;删除角色
, |, s0 w: Y4 ]/ ~7 v$ M- H- i/*但是有些权限是不能授予给角色的,比如unlimited tablespace和any关键字*/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-14 22:40 , Processed in 0.207822 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表