我随便创建了一个用户,create user lisi identified by lisi; 当我用sqlplus登录的时候:

cmd ->  sqlplus lisi/lisi  进不去    ->然后 lisi       lisi as sysdba  就进去了,所以才有了疑问。

然后我进入管理员,将lisi用户删掉了

cmd ->  sqlplus lisi/lisi  进不去    ->然后 lisi       lisi as sysdba  就进去了,疑问就更深了。

分别三个人解答:

 解答一:

对于windows操作系统,在oracle数据库安装后,会自动在操作系统中安装一个名为ORA_DBA的用户组,只要是该组中的用户,即可以
SYSDBA的身份登录数据库而不会验证SYS的口令。也可以创建名为ORA_SID_DBA(SID为实例名)的用户组,属于该用户组的用户也可以
具备以上特权。这个是你为啥能show的时候还是系统用户, 解答二:

  简单的说,oracle要认为你是sysdba有以下3个条件

  1. 你对oracle的密码文件没有进行过设置;(因为oracle默认不认证以sysdba登录的用户)

  2. 你是以操作系统管理员的身份登录的(不管谁登录你的电脑,只要是用管理员身份登录的,oracle都认作为sysdba,你可以试试用来宾账户登录操作系统,那样的话,oracle就不会把你认成DBA了);

  3. 你是以as sysdba的方式登录的(只要你接了as sysdba,不管你前面加了谁的用户名密码,oracle都认为你是以sysdba身份登录,用户为sys)

  当上面3个条件有一个不满足的时候,你登录的用户就不是sys了,而如果你登录的那个用户没有被授权为dba的话,那他的权限肯定就只能是普通权限    了。

解答三:

  写法上都是可以的,但是加上as sysdba那么你登陆的就是sysdba,和你前面的用户没关系了,你如果新建一个用户user1,如create user user1   identfied by 123,然后用sys账户grant给他登陆权限之后,就可以直接conn user1/123,这样连的就是user1,如果你conn user1/123 as sysdba,  那你连接的还是sysdba,和前面的user1一点关系都没有了

												

oracle 为什么没有权限的用户也可以用sysdba登录的更多相关文章

  1. oracle角色、权限和用户

    oracle角色.权限和用户 [转贴 2010-1-25 10:29:45]     字号:大 中 小 Oracle内置角色connect与resource的权限 首先用一个命令赋予user用户con ...

  2. oracle 分配表权限给用户的写法

    grant select on xxxx.xxxxx_TB to sb;grant select on xxxx.xxxxxx_tb to sb;

  3. 【Oracle】-【sqlplus / as sysdba登录报错问题】-新用户使用sqlplus / as sysdba登录报错

    刚才打开一个别人的测试库,用root登陆了的,sqlplus / as sysdba竟然报错,奇怪,于是在自己的VM中模拟该过程. 新建了一个test用户: [test@liu bin]# ./sql ...

  4. Oracle 学习笔记 13 -- 控制用户权限

    数据库控制语言的功能室控制用户对数据库的存取权限. 用户对某类数据具有何种操作权限是有DBA决定的.Oracle 通过GRANT语句完毕权限的授予,通过REVOKE语句完毕对权限的收回. 权限分为系统 ...

  5. ORACLE创建表空间和用户,并分配权限

    注意:如果是创建新的库,首先要先创建表空间,之后才可以创建用户:1.//创建临时表空间 create tablespace NCPZS_DATA datafile '/home/soft/oracle ...

  6. Oracle开发:创建一个用户并分配表空间和分配权限

    -- 创建一个用户并分配表空间和分配权限 -- 以sysdba登录 oracle@sha-col-oracle-2:~> sqlplus / as sysdba SQL*Plus: Releas ...

  7. Oracle:如何创建一个只有查看权限的用户

    因为工作中测试环境和开发环境是分开的,所以开发有时处理bug时需要连接测试数据库,这样出现一个问题是有些开发会为了验证某些问题任意改动数据库的表和字段,对测试库造成污染.为了能够让开发连接测试环境,同 ...

  8. oracle的特殊权限s bit丢失

    在SUN Cluster搭建过程中,主机工程师在配置集群资源组时报一个oracle的文件权限错误: 协助排查,发现报错很明确,直接指出说oracle的s bit 权限未设置. 直接去查看$ORACLE ...

  9. 以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析

    在linux 操作系统的数据库服务器上,使用”sqlplus / as sysdba” 登录Oracle 10.2 数据库实例时,登录失败,显示ORA-01031:  权限不足. 在数据库所在服务器上 ...

随机推荐

  1. SpringBoot配置(1) 配置文件application&yml

    SpringBoot配置(1) 配置文件application&yml 一.配置文件 1.1 配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的. application ...

  2. js鼠标拖动(转载)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. Ubuntu 14.10 下Hive配置

    1 系统环境 Ubuntu 14.10 JDK-7 Hadoop 2.6.0 2 安装步骤 2.1 下载Hive 我第一次安装的时候,下载的是Hive-1.2.1,配置好之后,总是报错 [ERROR] ...

  4. ubuntu16.04下docker安装和简单使用

    前提条件 操作系统 docker-ce支持的ubuntu版本: Bionic 18.04 (LTS) Xenial 16.04 (LTS) Trusty 14.04 (LTS) 卸载旧版本docker ...

  5. 使用Tensorflow操作MNIST数据

    MNIST是一个非常有名的手写体数字识别数据集,在很多资料中,这个数据集都会被用作深度学习的入门样例.而TensorFlow的封装让使用MNIST数据集变得更加方便.MNIST数据集是NIST数据集的 ...

  6. HTTP请求中 request payload 和 formData 区别?

    原文地址: http://www.cnblogs.com/tugenhua0707/p/8975615.html FormData和Payload是浏览器传输给接口的两种格式,这两种方式浏览器是通过C ...

  7. vue仿淘宝订单状态的tab切换效果

    <div class="navigation">  //这里是通过循环遍历出来的数据,你需要根据index的值来判断你现在点击的是第几个tab栏导航,同时在js中写一个 ...

  8. feign接口调用异常的解决方向

    1. consul: 检查调用方服务与被调用方服务是否在同一个consul; 2. swagger: 检查swagger注释是否清晰.恰当: 比如: @ApiImplicitParams(value ...

  9. python常见用法

    1.冒泡排序 a = [25,15,47,36,44,455,67,234,7,8,-47] def sortport(): for i in range(len(a)-1): for j in ra ...

  10. C# 数字转换成大写

    /// <summary> /// 数字转大写 /// </summary> /// <param name="Num">数字</para ...