oracle dba和sysdba的区别

 我来答
育知同创教育
2016-03-14 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
oracle dba和sysdba的区别如下:
1、dba是一种role对应的是对Oracle实例里对象的操作权限的集合,而sysdba是概念上的role是一种登录认证时的身份标识而已。而且,dba是Oracle里的一种对象,Role 和User一样,是实实在在存在在Oracle里的物理对象,而sysdba是指的一种概念上的操作对象,在Oracle数据里并不存在。
2、SYSDBA不是权限,当用户以SYSDBA身份登陆数据库时,登陆用户都会变成SYS。
sysdba身份登陆可以打开,关闭数据库,创建SPFILE,对数据库进行恢复操作等,而这些是DBA角色无法实现的;
sysdba 是系统权限,dba是用户对象权限;
sysdba,是管理oracle实例的,它的存在不依赖于整个数据库完全启动,只要实例启动了,他就已经存在;
以sysdba身份登陆,装载数据库、打开数据库,只有数据库打开了,或者说整个数据库完全启动后,dba角色才有了存在的基础;
北京金瑞博
2024-08-14 广告
北京金瑞博企业咨询服务有限公司由张磊和合伙人共同创立,专注于为全球制药公司提供法规事务(药品注册)、GMP合规、质量管理数字化、市场准入以及相关工作。我们立志成为国内知名、国际有影响力的专家型咨询公司,为客户合规带来改变,对行业合规产生影响... 点击进入详情页
本回答由北京金瑞博提供
千锋教育
2016-01-13 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
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 NO
而sysdba是概念上的role在数据字典里是查不到的
SQL> select * from dba_roles where upper(role) = ‘SYSDBA’;
no rows selected
2.
grant dba 和grant sysdba的差别
dba是正真的role,所以grant后在dba_role_privs里有记录,而revoke后就没有了
SQL> grant dba to testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
TESTUSER RESOURCE NO YES
TESTUSER CONNECT NO YES
TESTUSER DBA NO YES
SQL> revoke dba from testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
TESTUSER RESOURCE NO YES
TESTUSER CONNECT NO YES
对于sysdba是不会出现这个情况的,因为他不是正真的role
SQL> grant sysdba to testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
TESTUSER RESOURCE NO YES
TESTUSER CONNECT NO YES
那么这个是sysdba是这么记录的叻,
我在一个文章和帖子里对对sysdba的登录有过详细的叙述
对了,sysdba是登录时候需要的他是和remote_login_passwordfile关联的
我们可以查询v$pwfile_users;
如下:
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
—————————— —– —–
SYS TRUE TRUE
SYSTEM TRUE FALSE
TESTUSER TRUE FALSE
当你grant sysdba后,在这里就多了一条
下面我们revoke一下,再来看
SQL> revoke sysdba from testuser;
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
—————————— —– —–
SYS TRUE TRUE
SYSTEM TRUE FALSE
没有叻。
所以在这里dba和sysdba是根本不同概念了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2dca20d
推荐于2018-03-08 · TA获得超过4036个赞
知道大有可为答主
回答量:2638
采纳率:77%
帮助的人:1036万
展开全部
SYSDBA不是权限,当用户以SYSDBA身份登陆数据库时,登陆用户都会变成SYS。
SYSDBA身份登陆可以打开,关闭数据库,对数据库进行恢复操作等,而这些是DBA角色无法实现的;
SYSDBA是系统权限,DBA是用户对象权限;
SYSDBA是管理oracle实例的,它的存在不依赖于整个数据库完全启动,
只要实例启动了,他就已经存在,以SYSDBA身份登陆,装载数据库、打开数据库,只有数据库打开了,或者说整个数据库完全启动后,DBA角色才有了存在的基础;
DBA是一种role,对应的是对Oracle实例里对象的操作权限的集合,而SYSDBA是一种登录认证时的身份标识而已。而且,DBA是Oracle里的一种对象,Role 和User一样,是实实在在存在在Oracle里的物理对象,而SYSDBA是指的一种概念上的操作对象,在Oracle数据里并不存在。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
UCMT协進教育
2020-11-05 · 打造具有全球影响力的学产研生态圈
UCMT协進教育
CPMC协進教育集团,成立于2001年,从2010年开始,公司逐步发展成为教育、培训、投资、咨询等多元化公司。协進教育集团以“整合知识、智慧经营”为理念,成为了具有国际化战略定位的集团公司
向TA提问
展开全部
工商管理博士,英文为Doctorate of Business Administration,英文缩写为DBA,也有译作Doctor of Professional Studies in Business,英文简称DPS,是专门为工商界高层管理人员设计的全面系统的管理课程。

DBA学科特色:
充分强调系统学习并掌握专业知识和商战运营管理技能,提高学员经营能力和开拓创新能力;
把握企业产业发展趋势和市场前景,增强学员宏观分析及战略决策能力;
启迪发展思路,优化管理模式,激发创新意识与灵感,提升学员的综合能力和领导能力;
全面提升企业中高层管理者专业化、规范化、国际化的管理水平和经营理念。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式