Maybe the granter don't have the role you want to grant to grantee

解决方案 »

  1.   

    我一般给用户这么赋权限。
    GRANT CONNECT,RESOURCE to pmexp;
    GRANT CREATE ANY TABLE to pmexp;
    GRANT DROP ANY TABLE to pmexp;
    GRANT create session to pmexp;
    GRANT alter session to pmexp;
    GRANT create any view to pmexp;
    GRANT drop any view to pmexp;
    GRANT create public synonym to pmexp;
    GRANT drop public synonym to pmexp;
    GRANT create any sequence to pmexp;
    GRANT drop any sequence to pmexp;
      

  2.   

    把你实际操作的grant sql放上来,
    然后如果出现什么错误,把对应的错误信息也放上。
      

  3.   

    我觉得你是没有授予登录权限,即Connect权限没有.
    只需grant connect to user_name就可以了.
      

  4.   

    我是通过可视化的界面做的,不是sqlplus, 我还没有对他授权,现在刚刚用sys创建了用户a,而后给他空间权限,现在要用新用户a重新登陆来分配对象权限,这个时候登陆不了,系统说:
    “执行该程序所需要的数据库权限比当前授予你的权限要多“在没有对一个新用户授权的时候,他默认的权限应该是connect,但用这个为什么登陆不了呢我可是按照书上作的,请各位指教
      

  5.   

    我们通常这样授权
    CONNECT SYSTEM/MANAGER
    GRANT DBA TO USERNAME;
    GRANT SELECT ANY TABLE TO USERNAME;
      

  6.   

    CREATE USER A IDENTIFIED BY A;
    GRANT CONNECT TO A;
    COMMIT;
    CONN A/A@MIS
      

  7.   

    CREATE USER "TEST1"  PROFILE "DEFAULT" 
        IDENTIFIED BY "test" DEFAULT TABLESPACE "USERS" 
        TEMPORARY TABLESPACE "TEMP" 
        ACCOUNT UNLOCK;
    GRANT "CONNECT" TO "TEST1";
      

  8.   

    现在我可以用这个用户在sql里连接数据库,
    conn 成功,可在OEM里登陆为什么不行
      

  9.   

    grant oem_monitor to newuserjust try it