在Oracle中,SYS用户是整个数据库的所有者,SYS拥有数据库中几乎所有的权限。今天我们就来介绍一下使用SYS执行全文索引的建立时,出现了权限不足的错误。
  许多人刚刚接触Oracle时,对于权限并不是很了解,如果有时候报错ORA-1031缺少足够的权限,且找不到所需要的授权的权限时,就会尝试使用SYS来执行这个错误。由于SYS时整个数据库的所有者,因此不会出现缺少权限的问题。
  下面我们来介绍一个错误案例:在测试一个全文索引例子的时候,由于忘记切换用户,使用了SYS用户执行,结果出现ORA-1031错误,数据库测试版本为9204:
  SQL> SHOW USER
  USER 为"SYS"
  SQL> CREATE TABLE T (ID NUMBER, NAME VARCHAR2(60));
  表已创建。
  SQL> INSERT INTO T VALUES (1, 'A SIMPLE TEST FOR SYS CREATE CONTEXT INDEX');
  已创建 1 行。
  SQL> CREATE INDEX IND_T_NAME ON T(NAME) INDEXTYPE IS CTXSYS.CONTEXT;
  CREATE INDEX IND_T_NAME ON T(NAME) INDEXTYPE IS CTXSYS.CONTEXT
  *
  ERROR 位于第 1 行:
  ORA-29855: 执行 ODCIINDEXCREATE 例行程序时出错
  ORA-20000: Oracle Text 错误:
  DRG-50857: oracle error in drixtab.create_index_tables
  ORA-01031: 权限不足
  ORA-06512: 在"CTXSYS.DRUE", line 157
  ORA-06512: 在"CTXSYS.TEXTINDEXMETHODS", line 204
  注意:这个例子在普通用户下并不会报错:
  SQL> CONN YANGTK/YANGTK@TEST1已连接。
  SQL> CREATE TABLE T (ID NUMBER, NAME VARCHAR2(60));
  表已创建。
  SQL> INSERT INTO T VALUES (1, 'A SIMPLE TEST FOR SYS CREATE CONTEXT INDEX');
  已创建 1 行。
  SQL> CREATE INDEX IND_T_NAME ON T(NAME) INDEXTYPE IS CTXSYS.CONTEXT;
  索引已创建。
  通过EVENTS 10046进行跟踪,发现在创建DR$IND_T_NAME$K表的时候报错,而这个表是一个索引组织表。
  根据这些信息查询了METALINK,发现Bug No. 1366361对这个问题进行了比较清晰的阐述。缺少权限的不是SYS用户,而是CTXSYS所建立的存储过程没有权限。不过此处并没有解释清楚为什么普通表没有问题,而建立一个索引组织表报错。
  下面给出了对应的解决方法,将数据库的O7_DICTIONARY_ACCESSIBILITY设置为TRUE,重起后,就不会报错了。
  SQL> CONN /@TEST1 AS SYSDBA已连接。
  SQL> SHOW PARAMETER O7
  NAME TYPE VALUE
  ------------------------------------ ----------- --------------------------
  O7_DICTIONARY_ACCESSIBILITY boolean FALSE
  SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY = TRUE SCOPE = SPFILE;
  系统已更改。
  SQL> SHUTDOWN IMMEDIATE数据库已经关闭。已经卸载数据库。
  ORACLE 例程已经关闭。
  SQL> STARTUP
  ORACLE 例程已经启动。
  Total System Global Area 110173900 bytes
  Fixed Size 454348 bytes
  Variable Size 83886080 bytes
  Database Buffers 25165824 bytes
  Redo Buffers 667648 bytes数据库装载完毕。数据库已经打开。
  最后删除刚才建立索引失败留下的垃圾表,就可以重建索引了:
  SQL> DROP INDEX IND_T_NAME;
  索引已丢弃。
  SQL> CREATE INDEX IND_T_NAME ON T(NAME) INDEXTYPE IS CTXSYS.CONTEXT;
  索引已创建。

转自:http://www.wangchao.net.cn/bbsdetail_1794410.html

转载于:https://www.cnblogs.com/freewater/archive/2011/06/04/2072775.html

执行全文索引时出现权限不足的解决方法相关推荐

  1. linux 普通用户退出vim,Linux环境下VI/VIM编辑文件时无权限保存的解决方法(普通用户)...

    在Linux环境下,如果直接使用VI/VIM命令编辑没有修改权限的文件时,保存的时候就会提示用户无法进行保存操作,一般的解决方法只能是关闭文件重新以sudo权限打开该文件编辑后再保存(前提是用户具有s ...

  2. 执行游戏时出现0xc000007b错误的解决方法

    如图,这个错误使无数玩家烦恼. 出现这个错误,可能是硬件的问题,也可能是软件的问题.可是,因为硬件引起该问题的概率非常小,而且除了更换硬件之外没有更好的解决方法,因此本文将具体介绍怎样通过软件解决此问 ...

  3. php设置文件权限问题,php以fastCGI的方式运行时文件系统权限问题及解决方法

    今天准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的: 应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fastCGI的方式 ...

  4. linux java 权限不够_​Linux安装jdk时提示权限不够怎么解决

    ​Linux安装jdk时提示权限不够怎么解决 发布时间:2020-06-28 10:00:51 来源:亿速云 阅读:84 作者:Leah Linux安装jdk时提示权限不够怎么解决?针对这个问题,这篇 ...

  5. python操作sqlserver如何判断删除的数据不存在_Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法...

    本文实例讲述了Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法.分享给大家供大家参考,具体如下: 前言: 想把QQ日志爬虫(Python)爬下来的日志保存到 MongoD ...

  6. mysql脚本执行中文乱码_MySQL从命令行导入SQL脚本时出现中文乱码的解决方法

    本文实例讲述了MySQL从命令行导入SQL脚本时出现中文乱码的解决方法.分享给大家供大家参考,具体如下: 在图形界面管理工具 MySql Query Browser中打开脚本(脚本包括建库.建表.添加 ...

  7. 复制文件到服务器提示您需要权限,Ubuntu复制文件时提示Permission denied的解决方法...

    Ubuntu系统把一个文件复制到另一个文件时提示"Permission denied",这个错误提示的意思是认可被拒绝,意味着复制文件的权限发现了问题,那么该怎么解决呢?下面小编就 ...

  8. 使用Docker时遇到的坑与解决方法

    使用Docker时遇到的坑与解决方法 1. Docker 服务启动串台 使用 docker-compose 命令各自启动两组服务,发现服务会串台! [问题起因] 在两个不同名称的目录目录下面,使用 d ...

  9. 安装mysql配置时出错_mysql安装时出现各种常见问题的解决方法

    小编为大家整理许多mysql安装时出现各种常见问题的解决方法,供大家参考,具体内容如下 问题一: 当各位在安装.重装时出现could not start the service mysql error ...

最新文章

  1. jquery中的each各种神奇遍历用法
  2. Graphviz之DT:手把手教你使用可视化工具Graphviz将dot文件转为结构图的pdf文件
  3. c语言 fopen、fwrite、fread、fclose函数(打开文件进行读写覆盖或追加)
  4. 建立表/索引时的 存储参数:【PCTUSED参数与PCTFREE参数】
  5. vue插槽的使用(slot)
  6. Unity 移动 和 旋转 [小结]
  7. 纯真IP库PHP查询
  8. nacl溶解度_氯化钠溶解度
  9. 软件测试中的测不准原理
  10. 涠洲岛日出日落时间表_涠洲岛日出日落
  11. Android系统音乐界面UI设计,40款音乐APP界面UI设计欣赏
  12. 淘宝奇葩店铺:一个人的皇冠店|视频
  13. 台式win10电脑耳机没声音
  14. Python期末考试
  15. HTML和CSS实现京东首页(html和css详解)
  16. ubuntu使用记录(3)ubuntu 防火墙开放端口(开启ssh)
  17. 新版ideal2021配置Tomcat
  18. saiku (branch 3.8-release)构建步骤
  19. 深大uooc大学生心理健康章节答案第七章
  20. 求高手指点,发现98五笔有几个字三级简码和四级简码完全不同,不知道使用98五笔的亲们怎么用的?

热门文章

  1. java 多线程异常_java多线程执行异常
  2. 解决Ubuntu IDEA 不能输入中文
  3. 数学--数论--欧拉降幂--P5091 欧拉定理
  4. 疯子的算法总结(九) 图论中的矩阵应用 Part 1 POJ3613 Cow Relays
  5. verilog的学习
  6. [转]订制CentOS自安装光盘
  7. ROS 中的camera支持
  8. 夫妻两人同一个银行各自存50万,银行破产了该赔多少?
  9. 拉5000万存款,银行客户经理能拿40万奖金?
  10. 看新排美国话剧《哗变》