as sysdba 就是以sysdba登录,oracle登录身份有三种:
normal 普通身份
sysdba 系统管理员身份
sysoper 系统操作员身份
每种身份对应不同的权限

sysdba权限:
●启动和关闭操作
●更改数据库状态为打开/装载/备份,更改字符集
●创建数据库
●创建服务器参数文件spfile
●日志归档和恢复
●包含了“会话权限”权限

sysoper权限:
●启动和关闭操作
●更改数据库状态为打开/装载/备份
●创建服务器参数文件SPFILE
●日志归档和恢复
●包含了“会话权限”权限

请关注2个视图:dba_role_privs与 v$pwfile_users。

言简意赅的说下就是 dba跟dba_role_privs有关,而sysdba跟v$pwfile_users有关
下面引用下csdn一网友的小实验:

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是登录时候需要的他是和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是根本不同概念了。

normal 普通身份 sysdba 系统管理员身份 sysoper 系统操作员身份 dba和sysdba的更多相关文章

  1. Oracle sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别

    sys和system用户区别 1)最重要的区别,存储的数据的重要性不同 sys所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己 ...

  2. 【转】Oracle Sys和system用户、sysdba 和sysoper系统权

    一:最重要的区别,存储的数据的重要性不同 [sys]所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更 ...

  3. 翻译Oracle文档--SYSDBA和SYSOPER系统权限

    SYSDBA和SYSOPER是管理权限,被用户来执行高级管理操作例如:创建 开启/关闭 备份/恢复 数据库.SYSDBA系统权限是针对想给予完全授权的数据库管理员SYSOPER系统权限允许一个用户执行 ...

  4. Windows系统HTTP身份验证方法

    当Windows客户端尝试使用HTTP协议访问基于Web的资源时,会在客户端和服务器之间建立"对话".换句话说,服务器告诉客户端,访问资源之前进行身份验证 ,并且服务器还告诉客户端 ...

  5. Win7系统管理员设置了系统策略,禁止进行此安装,怎么办

    系统管理员设置了系统策略,禁止进行此安装,怎么办 最佳答案 尝试方法一:   windows开始菜单,运行里面输入gpedit.msc打开组策略,   在"计算机配置"→管理模板→ ...

  6. Win7 系统管理员设置了系统策略_禁止进行此安装_怎么办

    系统管理员设置了系统策略,禁止进行此安装,怎么办 最佳答案 尝试方法一:   windows开始菜单,运行里面输入gpedit.msc打开组策略,   在"计算机配置"→管理模板→ ...

  7. SYS与SYSTEM、DBA与SYSDBA的区别

    SYS与SYSTEM: 1. sys 的角色是sysdba system 的角色是sysoper 2. sys 具有create database的权限 system没有该权限 3. sys可以建数据 ...

  8. Oracle开发:dba和sysdba的区别

    oracle dba和sysdba的区别如下: 1.dba是一种role对应的是对Oracle实例里对象的操作权限的集合,而sysdba是概念上的role是一种登录认证时的身份标识而已.而且,dba是 ...

  9. ASP.NET Core - 基于IHttpContextAccessor实现系统级别身份标识

    问题引入: 通过[ASP.NET Core[源码分析篇] - 认证]这篇文章中,我们知道当请求通过认证模块时,会给当前的HttpContext赋予当前用户身份标识,我们在需要授权的控制器中打上[Aut ...

随机推荐

  1. TOJ 1258 Very Simple Counting

    Description Let f(n) be the number of factors of integer n. Your task is to count the number of i(1 ...

  2. lua "诡异"的return用法

    https://yq.aliyun.com/articles/11387 lua "诡异"的return用法   德哥 2016-03-29 15:38:42 浏览5690 评论0 ...

  3. .net编程知识点

    一.编程思想 OOP(面向对象) 面向对象三大特性(多态如何体现)及五项原则 AOP(面向切面编程) 面向切面编程静态植入和动态植入 二.c#23种设计模式 三.Castle是针对.NET平台的一个开 ...

  4. java使用commons-fileupload进行文件上传

    java中使用文件上传时需要使用特定的类库,这里使用commons-files类库进行文件上传,在http://commons.apache.org/proper/commons-fileupload ...

  5. Cannot execute request on any known server

    1.com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: c ...

  6. Linux 网络(连接)相关参数作用

    参考: [1] http://bbs.chinaunix.net/thread-2318039-1-1.html Backlog net.core.netdev_max_backlog = 1000 ...

  7. vue-cli脚手架和webpack-simple模板项目

    vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目. GitHub地址是:https://github.com/vuejs/vue-cli 一. ...

  8. 从list中随机选出几个数,并按照原来的顺序排列

    需求: 从list中随机选出几个数,并按照原来的顺序排列(比如从list中随机选出6个数) 方案一: //若对象size大于6,则随机去除6个对象,并按照原来的顺序排列 while(list.size ...

  9. ArcEngine开发鹰眼实现问题

    在网上百度一下有关AE鹰眼实现的代码,基本是一样的,可问题是好多代码自己运行起来鹰眼却总是加不进地图.住视图axMapControl1.OnMapReplaced(),axMapControl1.On ...

  10. 模拟ArrayList

    package com.helloidea; import java.util.ArrayList; import java.util.Collection; import java.util.Lis ...