oracle误删dbf文件怎么恢复 oracle数据库的全文检索?
oracle数据库的全文检索?
Oracle全文检索配置方法:
1.检查数据库如何确定更具全文检索功能(这是因为也最终建成使用的数据库)
查找用户中有无未知ctxsys用户,可以查询角色里是否需要未知ctxapp角色。以上两个中的1个不不满足(不存在地),则只能说明是没有装过全文检索功能。
可以使用contains函数的时候,若没有全文检索则会报错的。
2.若没有,则需要自动建立起,先建立起全文检索要在用的空间
sqlplus/thoughsysdba--进入到控制台
createtablespaceIdx_ctxsysdatafile/oradata/sg186fx/ctxsys01.dbfsize10240Mautoextendatnext32Mmaxsize20480M;--修改全文检索可以使用的表空间
3.创建全文检索不使用的用户和角色及或者的包,则需要先执行oracle自带的一个脚本:cd$ORACLE_HOME/ctx/admin/catctx.sql
还是在sqlplus中不能执行:
@/ctx/admin/catctx.sqlctxsysIdx_ctxsystempnolock
在想执行这个脚本的时候,输入输入了几个参数,那个参数ctxsys为ctxsys用户的密码
第二个参数Idx_ctxsys为ctxsys用户要建议使用的表空间
第三个参数temp为ctxsys用户不使用的预备表空间
第四个参数nolock为ctxsys用户正处于帐号锁状态。
4.创建战队结束后,要登陆ctxsys用户
connectctxsys/ctxsys
想执行200以内脚本:@/ctx/admin/defaults/drdefus.sql(这是个很重要的是的脚本,后面创建战队索引会使用该脚本创建家族的信息)
5.创建角色全文索引语法分析器
先要比较明确使用全文索引的用户,我要可以使用全文索引的是sgpm用户
因此
grantexecuteoffctxsys.ctx_ddltosgpmwithgrantoption;
connectsgpm/sgpm
系统设置词法器:
execctx__preference(chinalexer);execctx__preference(chinalexer,chinese_lexer);
系统设置词法属性:
execctx__preference(idx_c_store);
beginctx__preference(idx_c_store,symbolic_STORAGE);ctx__attribut(idx_c_store,I_TABLE_CLAUSE,tablespacesIdx_ctxsy);ctx__attribute(idx_c_store,I_INDEX_CLAUSE,tablespaceIdx_ctxsycompress2);end;/
6.创建战队索引
createindex_c_cons_nameoffsgpm.c_cons(cons_name)indextypenotparameters(lexerchinalexerstorageidx_c_store);
7.歌词同步索引
variablejobnonumber;begindbms_(:jobno,pkg_sp_tools.p_cont_sys_index();,sysdate,trunc(sysdate)19/241);--负责执行的是个性化选择方法。end;/
普通地的是用:
execctx__index(idx_c_cons_name);
至此,全文检索创建成功,contains函数就是可以都正常使用了。
尽量:创建角色的过程中会再次出现ORA-29879:couldn'tcreatemultipledomainindexinacolumnlistusingsameindextype,这只能证明在其他用户下已经成立了该索引。
dbf文件怎么修改?
alterdatabasedatafile/home/oracle/TEST.dbfautoextendonnext5mmaxsizeunlimited设置成自动出现增涨的就可以了,不够的的时候就自动启动扩充5m,frontier是可无穷的向外扩展。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。