Oracle 11g中创建索引时权限不足

发布于 2024-08-22 17:42:15 字数 629 浏览 7 评论 0原文

我正在尝试在 Oracle 中创建索引,我的 ddl:

create index OMD_DOCTEXT2_CTX on table_name(col_name)
indextype is ctxsys.context local
parameters ('datastore CTXSYS.FILE_DATASTORE filter ctxsys.null_filter  lexer E2LEX wordlist E2WORDLIST stoplist E2STOP section group E2GROUP') parallel 4;

我收到错误:

ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-20000: Oracle Text error:
DRG-10758: index owner does not have the privilege to use file or URL datastore
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 366

有什么想法吗?

I am trying to create an index in Oracle, my ddl :

create index OMD_DOCTEXT2_CTX on table_name(col_name)
indextype is ctxsys.context local
parameters ('datastore CTXSYS.FILE_DATASTORE filter ctxsys.null_filter  lexer E2LEX wordlist E2WORDLIST stoplist E2STOP section group E2GROUP') parallel 4;

I am getting error :

ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-20000: Oracle Text error:
DRG-10758: index owner does not have the privilege to use file or URL datastore
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 366

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半衾梦 2024-08-29 17:42:15

来自 Oracle 文本文档:

文件和 URL 数据存储启用访问
到实际数据库磁盘上的文件。
当安全时这可能是不可取的
这是一个问题,因为任何用户都可以浏览
可访问的文件系统
Oracle 用户。 FILE_ACCESS_ROLE
可以通过系统参数来设置
数据库角色的名称
授权使用创建索引
文件或 URL 数据存储。如果设置的话,任意
用户尝试创建索引
使用 FILE 或 URL 数据存储必须具有
这个角色,或者索引创建将
失败。

例如下面的语句
设置数据库角色的名称:

ctx_adm.set_parameter('FILE_ACCESS_ROLE','TOPCAT');

其中 TOPCAT 是角色
有权在 a 上创建索引
文件或 URL 数据存储。创造
当用户执行 INDEX 操作时,将会失败
没有授权角色
尝试在文件上创建索引或
URL 数据存储。

那么,您的用户是否具有必要的角色?

From the Oracle Text Documentation:

File and URL datastores enable access
to files on the actual database disk.
This may be undesirable when security
is an issue since any user can browse
the file system that is accessible to
the Oracle user. The FILE_ACCESS_ROLE
system parameter can be used to set
the name of a database role that is
authorized to create an index using
FILE or URL datastores. If set, any
user attempting to create an index
using FILE or URL datastores must have
this role, or the index creation will
fail.

For example, the following statement
sets the name of the database role:

ctx_adm.set_parameter('FILE_ACCESS_ROLE','TOPCAT');

where TOPCAT is the role that is
authorized to create an index on a
file or URL datastore. The CREATE
INDEX operation will fail when a user
that does not have an authorized role
tries to create an index on a file or
URL datastore.

So, does your user have the necessary role?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文