首页|资讯|互联网|电信|硬件|软件|情报|产经|博客|家庭|商用电脑|游戏|评测|学院|下载|网络通信|方案应用|搜索
移动计算|商用软件|外包|开源|中间件|企业|IT经理|发烧友|程序员|IT女性|学生|老板|笔记本|手机|台式机|数码|论坛
服务器
在Unix服务器上设置Oracle全文检索
作者: 来源: [收藏到E起摘]
编者按

    目前全文检索功能几乎所有主流数据库都支持。此前笔者曾在sql server 2000上实现,感觉非常简单,方便,但创建全文检索索引的时间比较长,通常要十几个小时。Oracle 的全文检索建立和维护索引都要快得多,笔者的65万记录的一个表建立索引只需要20分钟,同步一次只需要1分钟。但设置就要复杂得多。
【正文】
  由于工作需要,笔者在HP UX, Soralis 上面设置了Oracle Intermedia来实现全文检索。目前已经投入实际使用。设置过程中有许多问题和经验,拿来和大家交流。本文依据的是Oracle 8.1.6 和8.1.7两个版本,不能保证适用于其他版本。

  目前全文检索功能几乎所有主流数据库都支持。此前笔者曾在sql server 2000上实现,感觉非常简单,方便,但创建全文检索索引的时间比较长,通常要十几个小时。Oracle 的全文检索建立和维护索引都要快得多,笔者的65万记录的一个表建立索引只需要20分钟,同步一次只需要1分钟。但设置就要复杂得多。

  一.设置过程

  1.首先,检查你的数据库是否安装了intermedia

  这可以通过检查是否有ctxsys用户和ctxapp角色(role). 如果没有这个用户和角色,意味着你的数据库创建时未安装intermedia功能。你必须修改数据库以安装这项功能。

  修改过程:

  运行 $ORACLE_HOME/bin/dbassist, 选择'modify database', 然后在选择数据库功能时将j server 和 intermedia 都选上(安装intermedia必须同时安装jserver).强烈建议你在做这个改动前先备份整个数据库。

  2.设置extproc

  Oracle 是通过所谓的‘外部调用功能’(external procedure)来实现intermedia的,因此正确地设置extproc是关键一步。

  首先要配置listener 使它能监听intermedia 调用的请求。你可以通过运行$ORACLE_HOME/bin/netassit 来进行配置,也可以手工修改配置文件:$ORACLE_HOME/network/admin/listener.ora ,然后重新启动listener。下面以一个例子来讲述如何手工修改配置文件。

  打开listener.ora文件,在修改前,通常有如下内容(假定使用缺省listener):

  

LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = MYDATABASE)(PORT = 1521)) ) SID_LIST_LISTENER = (SID_DESC = (GLOBAL_DBNAME = mydatabase.world) (ORACLE_HOME = /u01/app/oracle/product/8.1.6) (SID_NAME = mydatabase) )


  这个listener还没有配置extproc, 因此,需要为它增加对extproc的监听,办法就是分别增加description 和 sid_desc. 修改后的listner.ora 如下:

  

LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = MYDATABASE)(PORT = 1521)) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = mydatabase.world) (ORACLE_HOME = /u01/app/oracle/product/8.1.6) (SID_NAME = mydatabase) ) (SID_DESC = (PROGRAM = extproc) (SID_NAME = PLSExtProc) (ORACLE_HOME = /u01/app/oracle/product/8.1.6) ) )



  注意上面的host, global_dbname,sid_name,oracle_home应填写你的数据库的实际值,但program一项必须填写extproc.

  其次,要配置服务器端的tnsnames.ora文件。该文件的位置在$ORACLE_HOME/network/admin下面。同样可以通过运行netasst来进行配置。

  在tnsnames.ora文件中需要增加如下一项:

  
EXTPROC_CONNECTION_DATA,EXTPROC_CONNECTION_DATA.WORLD = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (CONNECT_DATA = (SID = PLSExtProc) ) )

[1] [2] [3]下一页
关键字 全文检索  Oracle  Unix服务器  索引 
相关文章
·盖茨的Vista新功能预演和数字家庭服务器 ·冷眼看CES 展览有35个足球场那么大
·半导体:新产品迭出 新技术纷呈 ·长板凳上钱大群 IBM大中华区CEO老兵新传
·一天登录MSN五百次? 谁打搅了网络太平 ·惠普渠道专供服务器DL140直销普通用户
·飞塔推全新多功能安全工具FortiGate-50B ·2009年刀片收入百亿 IBM定其为创新典型
·Avaya收购SIP应用服务器厂商Ubiquity ·存储分析 软件厂商掀起SMB数据保护潮流
精彩文章推荐
·微软将公布云版 Windows正式名称
·图片赏析:蓝色巨人IBM的绿色机房
·采购1U机架式x86服务器的七大秘诀
·首款超百万亿次超级计算机天津下
·微软昨日宣布将免费提供 Hyper-V
·虚拟化专家 VMware 宣布跨入云计
·HP发表新款虚拟化刀片服务器BL49
·中国自主研发龙芯芯片足抗英特尔
·微软将推新版VMM 2008强虚拟化版
·虚拟化大幕开启!英特尔推至强74
最新文章推荐
解决方案
查找
按应用查找:
按行业查找:
·Sogeti创新云
·EMC:真正绿色IT 要全面综合设计
·惠普为江门国税提供海量存储
·面对灾难 如何保护重要数据的安全
·EonStor产品平安城市监控存储解决
·EonStor产品电力行业解决方案
·面向服务的存储解决方案
·华为3Com:天津海事局存储系统案例
·Sun核心解决方案为电信行业注入新
·联想深腾1800机群助上海交大生命科