1.oracle 中用户的问题(带领你认识oracle使用者常说起的几个名词)
我们刚刚安装好oracle后,里面有scott,system,sys,然后又听说了sysdba,dba. 那么它们是一些什么东东呢? 你知道嘛? 其实它们不神秘! 下面就带你了解这些东东吧! 首先来看看用户吧,我查阅了一些资料,在加上自己的理解: 所谓用户,就是实用oracle数据库了!可以这么简单是理解了,你只要要使用这个数据库,你就是这个数据库的用户了。 说到用户,不自然的就扯到了权限了,大家都知道数据库有管理员和普通用户之区别。要实用数据库就必然要连接上数据库了。 说到次,又不自然的车到了dba和sysdba的区别了!呵呵,没办法,这些弄清楚了,好理解些的!dba是Oracle里的一种对象,Role 和User一样,是实实在在存在在Oracle里的物理对象,
而sysdba是指的一种概念上的操作对象,在Oracle数据里并不存在。所以说这两个概念是完全不同的。dba是一种role对应的是对Oracle实例里对象的操作权限的集合,
而sysdba是概念上的role是一种登录认证时的身份标识而已。 1. 物理上的role dba 是可以在数据字典里查到的 SQL> select * from dba_roles where upper(role) = 'DBA';ROLE PASSWORD
—————————— ——– DBA NO2.
而sysdba是概念上的role在数据字典里是查不到的SQL> select * from dba_roles where upper(role) ='dba';
未选定行
grant dba 和grant sysdba的差别
dba是正真的role,所以grant后在dba_role_privs里有记录,而revoke后就没有了首先创建用户zy
SQL> create user zy identified by zy;用户已创建。
SQL> grant dba to zy;授权成功。
SQL> select * from dba_role_privs where grantee = 'ZY';GRANTEE GRANTED_ROLE ADM DEF
------------------------------ ------------------------------ --- --- ZY DBA NO YESSQL> revoke dba from zy;
撤销成功。
SQL> select * from dba_role_privs where grantee = 'ZY';未选定行
对于sysdba是不会出现这个情况的,因为他不是正真的role
在进行下面的语句前,请你确认你是否实在sys用户下操作的 SQL> conn sys/sys as sysdba; --sys/sys前一个是sys用户,后一个sys是密码 已连接。 SQL> grant sysdba to zy;授权成功。
SQL> select * from dba_role_privs where grantee = 'ZY';
未选定行
sysdba是登录时候需要的他是和remote_login_passwordfile关联的
我们可以查询v$pwfile_users; 如下: SQL> select * from v$pwfile_users;USERNAME SYSDB SYSOP
------------------------------ ----- ----- SYS TRUE TRUE ZY TRUE FALSE 当你grant sysdba后,在这里就多了一条下面我们revoke一下,再来看
SQL> revoke sysdba from zy;撤销成功。
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
------------------------------ ----- ----- SYS TRUE TRUE 没有了。 通过上面的对比,我相信大家对DBA和SYSDBA的区别人生的比较深入了吧上面已经知道了sysdba和sba的区别了。
下面就来看看我们安装好数据库后的几个用户了,sys,scott,system的区别了! 废话扯了一堆,你感觉才进入正题吧。 scott 是个演示用户,是让你学习ORACLE用的。 SYSDBA 不是用户,可以认为是个权限,超级权限,超级用户分两种 SYSDBA和SYSOPT
SYSOPT 后面3个字母是operator的意思,也就是操作数据库的人, 而SYSDBA 则是管理数据库的人SYSDBA比SYSOPT的权限还要大,而SYS用户就完全是个SYSDBA,
但SYSTEM用户默认是SYSOPT,不过它也能以SYSDBA的权限登陆我结合别人的经验,总结就是上面的,有好的意见我们可以一起学习oracle