是不是把dba权限赋给用户,其他connect resource 别的就不用赋了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是不是把dba权限赋给用户,其他connect resource 别的就不用赋了相关的知识,希望对你有一定的参考价值。

Oracle内置角色connect与resource的权限

首先用一个命令赋予user用户connect角色和resource角色:
grant connect,resource to user;
运行成功后用户包括的权限:

CONNECT角色: --是授予最终用户的典型权利,最基本的
ALTER SESSION --修改会话
CREATE CLUSTER --建立聚簇
CREATE DATABASE LINK --建立数据库链接
CREATE SEQUENCE --建立序列
CREATE SESSION --建立会话
CREATE SYNONYM --建立同义词
CREATE VIEW --建立视图

RESOURCE 角色: --是授予开发人员的
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立过程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立触发器
CREATE TYPE --建立类型

从dba_sys_privs里可以查到(注意这里必须以DBA角色登录):
select grantee,privilege from dba_sys_privs
where grantee=\'RESOURCE\' order by privilege;

GRANTEE PRIVILEGE
------------ ----------------------
RESOURCE CREATE CLUSTER
RESOURCE CREATE INDEXTYPE
RESOURCE CREATE OPERATOR
RESOURCE CREATE PROCEDURE
RESOURCE CREATE SEQUENCE
RESOURCE CREATE TABLE
RESOURCE CREATE TRIGGER
RESOURCE CREATE TYPE
参考技术A RESOURCE 权限就包括了创建表和删除,dml 该用户下面的对象的功能的! UNLIMITED TABLESPACE 是 用户可以对default tablespace 有无限的使用权限!这是我赋予 getl 的CONNECT,RESOURCE权限后查看的: sys@TB> select privilege from dba_sys_privs where grantee=upper('&U'); Enter value for u: getl old 1: select privilege from dba_sys_privs where grantee=upper('&U') new 1: select privilege from dba_sys_privs where grantee=upper('getl') PRIVILEGE ---------------------------------------- UNLIMITED TABLESPACE CREATE ANY VIEW CREATE ANY TABLE DEBUG ANY PROCEDURE SELECT ANY TABLE DEBUG CONNECT SESSION CREATE SESSION 7 rows selected.就这么多了,希望能帮到你
更多建站问题,可搜一下“飘仙论坛”

Linux权限与组

rwx r-xr r-x  		root  root 
r:读 (read)  	4
w:写(write)	  	2
x:执行(execute)    ``1
- 没有权限      0

权限 的前三位  
rwx  属主权限位(用户权限)
r-xr 属组权限位 
r-x  其他权限
root 用户权限
root 用户组


前3位  用户权限位
中3位  组权限
后三位 其他权限位

   rwx r-x r-x
   rwx 属主权限
   r-x 组权限 
   r-x 其他权限

rwx         r-x      r-x
用户权限   组权限   其他权限

不是文件所有者或者文件所有者组中的成员都称之为其他权限。

特殊权限位:
t T s S X + 



权限说明:
r:读 (read)  	4
w:写(write)	  	2
x:执行(execute)      1
- 没有权限      	0
u  = 主
g  = 组
o  =  其他

权限排列: 用户权限(3位) 组权限(3位)  其他权限(3位)
-----------------------------------linux用户组------------------------------------------
增加组(增)  
groupadd incahome   ####(增加 incahome组)

查询用户所属组: (查用户)

方法1.
groups chenleilei    (组配置文件: /etc/group)           
chenleilei : incahome
方法2.
id leilei   ( id  用户 )
uid=500(leilei) gid=501(incahome) groups=501(incahome)

查询组:(查组)
grep ‘incahome‘ /etc/group
查询用户组所属组(查):
[root@localhost ~]# id leilei
uid=500(leilei) gid=501(incahome) groups=501(incahome) ---》属于incahome组

查组中有哪些用户(组用户查询)
查看当前组的ID号是多少,然后过滤该ID就可查看所有相同ID号的用户就是组中成员

[test@leilei root]$ grep ‘:524‘ /etc/passwd | awk -F ‘[:]+‘ ‘{print $1}‘
leilei
oldgirl



删除组:(删)
正确格式:  groupdel incahome (删除 incahome 组)
同时再次删除配置文件中的组: grep ‘incahome‘ /etc/group 
删除组命令:
sed -i ‘/^a.*/d‘ /etc/group  sed删除组(a.是以a开头的组名 /d 删除  以a开头的组全部被删除 )
grep  ‘incahome‘ /etc/group  查询组

删除用户:
1、 从组中删除用户               ---------------------- ### sed -i ‘/^test.*/d‘ /etc/group
2、 删除用户 userdel test        ---------------------- ###  userdel 用户
3、 删除passwd文件中 /etc/passwd 文件中有关用户的信息   ###  sed -i ‘/^test.*/d‘ /etc/group


把用户从组中删除
gpasswd -d leilei  GROUP 组 
创建组:
geoupadd  test   [创建test组]

修改用户组:(改)
usermod -g  |组|  |用户|
usermod -g incahome leilei  [如果这句命令不可以用可以尝试usermod -g leilei incahome ]


例子1: useradd -g incahome leilei [把leilei加入到incahome组中]


groupadd incahome  ## 如同一个家庭
useradd leilei -g incahome  ## 如同家庭的主人  属于incahome这个家。

groups 查看当前登录用户的组内成员
方法1:
grep ‘:524‘ /etc/passwd | awk -F ‘[:]+‘ ‘{print $1}‘


方法2:(美化版)
awk -F":" ‘{print $1"		"$4}‘ /etc/passwd | grep 500  【查看】
--------------------------------------------------------------------------
[root@localhost ~]# awk -F":" ‘{print $1"		"$4}‘ /etc/passwd | grep 500
leilei		500
oldgirl		500
--------------------------------------------------------------------------
命令解释:  	 =table键 



删除用户注意
正确的删除用户方法是 :

[root@localhost ~]# find / -type d -name "leilei" | xargs rm -rf

1、删除用户 userdel test   

1、删除/etc/group   /etc/passwd文件中有关用户的信息。

2、删除/home/目录里面的以用户名命名的文件夹。

3、删除/var/spool/mail目录里面的,以用户名命名的文件夹。   


查看用户ID时,发现无法创建,可能是已经在/etc/group和/etc/passwd文件中已经存在该用户信息
手动删除这些信息即可

添加用户并加入组:
useradd leilei -g incahome



-----------------------------------linux用户组--------------------------------------------

rwx r-xr r-x  	root root 
r:读 (read)  4
w:写(write)  2
x:执行(1)    1
- 没有权限      0

权限 的前三位  
rwx  属主权限位(用户权限)
r-xr 属组权限位 
r-x  其他权限

root 用户权限
root 用户组

总结结论: linux目录的 读写执行权限说明
1、可读R:表示具有读取阅读权限,下面文件以及子目录的权限 ls dir
   1.如果没有x权限,就无法进入目录中(无法cd /mulu/)
   2.如果没有x权限,ls列表时可以看到所有文件名,但是会提示无权访问目录下文件。
   3.如果ls-l 列表,所有属性都带有问号,也会提示无线访问目录下文件,但是可以看到所有文件名

2、可写W:表示具有增加,删除和修改目录内文件名的权限,(需要X权限配合才可以做到)

3、可执行x:表示具有进入目录权限;如cd  dir


chmod 命令:

chmod 
	a+x 是给所有人加上可执行权限,包括所有者,所属组,和其他人
	o+x 只是给其他人加上可执行权限

用户和组权限解释:
a 代表所有用户
u 代表用户主  
o 代表其他. [非登录用户和登录用户的组的用户为其他]
g 代表用户组
x 代表执行权限

文件权限解释:
r:读 (read)  4
w:写(write)  2
x:执行(1)    1
- 没有权限      0

  rwx  - rwx    -    rwx
     主       组           其他
    user  group        others

  权限  +  
  [root@leilei ~]# chmod u+x 1.txt
  [root@leilei ~]# ll 1.txt
  -rwxr--r-- 1 root root 0 Jul 9 14:07 1.txt   [给属主加了一个执行权限]

  [root@leilei ~]# chmod u-wx,g-wx,o-wx  1.txt  [用户主减去写入和执行权限,组减去写入和执行权限,其他用户减去写入和执行权限]
  [root@leilei ~]#  ll 1.txt
  -r--r--r-- 1 root root 0 Jul 9 14:07 1.txt        [查看减去写入和执行权限后的文件]

  [root@leilei ~]# chmod a+wx 1.txt       [所有权限都加 wx]
  [root@leilei ~]# ll 1.txt
  -rwxrwxrwx 1 root root 0 Jul 9 14:07 1.txt

以上是关于是不是把dba权限赋给用户,其他connect resource 别的就不用赋了的主要内容,如果未能解决你的问题,请参考以下文章

oracle 创建用户并且赋给,刚创建的用户管理员权限。

oracle创建用户后需要授哪些权限

ORACLE 中如何把A用户的增删改查权限赋给B用户

oracle怎么授权授权的权限

oracle 角色

oracle数据库