是因为我选择了normal的登录方式吧?那为什么system登录时选择normal就可以呢?另外:我要创建一个必须用sysdba登录方式的用户要怎么创建?要创建一个normal登录方式的用户呢?      两条创建语句的区别怎么区分?

解决方案 »

  1.   

    sys用户拥有SYSDBA,SYSOPER的权限,登录也只能用这两种身份登录,不能以normal登录。是ORACLE权限最高的用户;
    SYSTEM只能是NORMAL登录,除非给他授SYSDBA,SYSOPER权;创建用户的语句没有区别,区别的是授权;
    创建用户后授予SYSDBA的权限就可以以SYSDBA登录;
      

  2.   


    哦,说的很详细,谢谢不过为什么我的SYSTEM账户能用SYSDBA登录呢?没有给它授权过啊
      

  3.   

    你可以看看你的system有哪些角色 用system登录
    SELECT * FROM USER_ROLE_PRIVS;
      

  4.   

    我知道为什么SYSTEM可以登录了
    我选的是SYSDBA方式登录
    在里面执行SHOW USER,显示的是sys
      

  5.   

    这位兄弟还是没明白conn sys/密码 as sysdba   sys是数据库系统管理员(sysdba)权限大于数据库管理员(dba)
    create user test identified by 密码
    grant sysdba to user  --记住必须以sysdba的身份登陆才能授这样的权限  不是数据库的管理员千万不要给谁随意授这样的权限
      

  6.   


    恩,之前理解一直挺模糊,经您这么一说,就清楚多了,原来分系统管理员和数据库管理员那我再问问,sysoper是什么角色?
      

  7.   

    SYSOPEN跟SYSTEM,SYS有什么区别?
      

  8.   

    所有oracle的数据字典的基表和视图都存放在sys用户中,sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。
    system用户用于存放比sys用户更次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。system用户只能用normal身份登陆,除非你对它授予了sysdba的系统权限或者syspoer系统权限。normal身份是普通用户身份
    sysdba身份拥有最高的系统权限,登陆后是 SYS(通过命令“show user”查看一下即可知道)
    sysoper身份主要用来启动、关闭数据库,sysoper 登陆后用户是PUBLIC