码迷,mamicode.com
首页 > 其他好文 > 详细

ORA-01919

时间:2015-06-23 22:55:15      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

看到这个错误提示再明白不过了,Oracle中某个角色不存在。

不小心把Oracle中的几个重要角色删除掉了(dba,connect,resource),Plsql只能用DBA权限进去,普通权限进不去,悲剧中,百度....貌似没查出个所以然,但是想想

技术分享 类似与这样的提示。百度也给不出想要的答案,答案要靠自己来发现

1:首先了解下这几个角色都是干什么用的,然后就知道如何处理

   1):connect

        select GRANTEE, PRIVILEGE from DBA_SYS_PRIVS where GRANTEE =‘CONNECT‘;查询出下面内容

        ALTER SESSION --修改会话
        CREATE CLUSTER --建立聚簇
        CREATE DATABASE LINK --建立数据库链接
        CREATE SEQUENCE --建立序列
        CREATE SESSION --建立会话
        CREATE SYNONYM --建立同义词
        CREATE VIEW --建立视图

   解决方法:首先创建角色,然后再赋权限就行了:

    SQL-> create role connect;

    SQL->  grant ALTER SESSION ,CREATE CLUSTER,CREATE DATABASE LINK,CREATE SEQUENCE,CREATE SESSION,CREATE SYNONYM,    CREATE VIEW   to connect;

  2):resource--是授予开发人员的

        CREATE CLUSTER --建立聚簇
        CREATE PROCEDURE --建立过程
        CREATE SEQUENCE --建立序列
        CREATE TABLE --建表
        CREATE TRIGGER --建立触发器
        CREATE TYPE --建立类型

   SQL->select grantee,privilege from dba_sys_privs where grantee=‘RESOURCE‘ order by privilege;

      RESOURCE CREATE CLUSTER
      RESOURCE CREATE INDEXTYPE
      RESOURCE CREATE OPERATOR
      RESOURCE CREATE PROCEDURE
      RESOURCE CREATE SEQUENCE
      RESOURCE CREATE TABLE
      RESOURCE CREATE TRIGGER
      RESOURCE CREATE TYPE

    SQL-> create role resource;

    SQL->  grant CREATE CLUSTER,CREATE INDEXTYPE,CREATE OPERATOR,CREATE PROCEDURE,CREATE SEQUENCE,CREATE TABLE,CREATE TRIGGER,CREATE TYPE    to resource;

  3):DBA

    create role DBA;
    grant all privilege to dba with admin option;

 

 

OK,问题解决了。

   

ORA-01919

标签:

原文地址:http://www.cnblogs.com/bingzisky/p/4596354.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!