Oracle資料庫全文索引設定步驟簡介(轉)
Oracle資料庫全文索引設定步驟簡介(轉)[@more@]已有幾個專案組開始使用oracle的全文索引。Oracle的詞法分析器針對ZHS16GBK字符集的詞法分析尚不夠智慧,只能機械地以字為單元進行匹配。對於utf8字符集的資料庫有一個新的漢語分析器chinese_lexer,效率有了很大改善。現將驗證並整理過的如何進行oracle全文索引設定的文件發給大家,適用於8i、9i各平臺版本。
對於DB2,有一個叫做TIE(Text Information Extend)的外掛可以實現全文索引,不過據說它的語法分析也很原始。據介紹使用CM(Content Manager)能做到比較好的全文檢索,不過需要裝一大堆的軟體,不適於簡單的應用。
一.建立資料庫
1、使用dbassist建立資料庫時要選擇jserver和intermedia兩個選項。
2、檢查你的資料庫是否安裝了intermedia,可以透過檢查是否有ctxsys使用者和ctxapp角色(role).
3、如果沒有這個使用者和角色,意味著資料庫建立時未安裝intermedia功能。必須修改資料庫以安裝這項功能。修改過程:
執行 $ORACLE_HOME/bin/dbassist, 選擇'modify database', 然後在選擇資料庫功能時將jserver 和 intermedia 都選上(安裝intermedia必須同時安裝jserver).
二.設定extproc
Oracle 透過 ‘外部呼叫功能’(external procedure)來實現intermedia的,因此正確地設定extproc是關鍵一步。 一般資料庫安裝完jserver和intermedia後在listener.ora 和tnsnames.ora中已經設定了extproc。
1、測試extproc是否正常
重新啟動listener,然後,使用tnsping 來測試一下是否配置正確,
命令列下執行
tnsping extproc_connection_data
或者
tnsping extproc_connection_data.world
如果配置正確,會顯示:
Attempting to contact (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)) OK(140毫秒)
如果正確,可以跳過2、3步驟。否則請按照步驟2、3設定listener.ora 和tnsnames.ora檔案,修改後一定要重新啟動listener,但並不需要重新啟動資料庫。
2、設定listerner.ora
如果tnsping失敗,需要配置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.
3、設定tnsnames.ora
其次,要配置伺服器端的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)
)
)
注意其中,KEY 和SID必須與listener.ora中的key 和sid_name對應相同。
對於DB2,有一個叫做TIE(Text Information Extend)的外掛可以實現全文索引,不過據說它的語法分析也很原始。據介紹使用CM(Content Manager)能做到比較好的全文檢索,不過需要裝一大堆的軟體,不適於簡單的應用。
一.建立資料庫
1、使用dbassist建立資料庫時要選擇jserver和intermedia兩個選項。
2、檢查你的資料庫是否安裝了intermedia,可以透過檢查是否有ctxsys使用者和ctxapp角色(role).
3、如果沒有這個使用者和角色,意味著資料庫建立時未安裝intermedia功能。必須修改資料庫以安裝這項功能。修改過程:
執行 $ORACLE_HOME/bin/dbassist, 選擇'modify database', 然後在選擇資料庫功能時將jserver 和 intermedia 都選上(安裝intermedia必須同時安裝jserver).
二.設定extproc
Oracle 透過 ‘外部呼叫功能’(external procedure)來實現intermedia的,因此正確地設定extproc是關鍵一步。 一般資料庫安裝完jserver和intermedia後在listener.ora 和tnsnames.ora中已經設定了extproc。
1、測試extproc是否正常
重新啟動listener,然後,使用tnsping 來測試一下是否配置正確,
命令列下執行
tnsping extproc_connection_data
或者
tnsping extproc_connection_data.world
如果配置正確,會顯示:
Attempting to contact (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)) OK(140毫秒)
如果正確,可以跳過2、3步驟。否則請按照步驟2、3設定listener.ora 和tnsnames.ora檔案,修改後一定要重新啟動listener,但並不需要重新啟動資料庫。
2、設定listerner.ora
如果tnsping失敗,需要配置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.
3、設定tnsnames.ora
其次,要配置伺服器端的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)
)
)
注意其中,KEY 和SID必須與listener.ora中的key 和sid_name對應相同。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-963304/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE資料庫簡介(轉)Oracle資料庫
- 達夢資料庫全文索引簡介資料庫索引
- Oracle資料庫登入流程的步驟介紹Oracle資料庫
- Oracle資料庫啟動步驟Oracle資料庫
- 資料庫設計方法步驟資料庫
- 資料庫設計的基本步驟資料庫
- oracle資料庫使用者建立步驟Oracle資料庫
- ORACLE資料庫閃回步驟詳解Oracle資料庫
- 關閉ORACLE資料庫步驟參考Oracle資料庫
- ORACLE資料庫升級詳細步驟Oracle資料庫
- Oracle:容器資料庫簡介Oracle資料庫
- kubernetes-部署Oracle資料庫步驟Oracle資料庫
- Oracle資料庫例項啟動步驟分析Oracle資料庫
- oracle DG資料庫切換步驟筆記Oracle資料庫筆記
- oracle資料庫設定Oracle資料庫
- 資料庫查詢步驟資料庫
- 複製資料庫步驟資料庫
- Sybase資料庫簡介 (轉載)資料庫
- 關於資料庫表的設計步驟資料庫
- 資料庫設計---即資料庫架構設計的幾個步驟資料庫架構
- 快速掌握重啟Oracle資料庫的操作步驟Oracle資料庫
- Oracle 9i 配置備用資料庫步驟Oracle資料庫
- [轉]Oracle資料庫ASH和AWR的簡單介紹Oracle資料庫
- Oracle - 資料庫的組成簡介Oracle資料庫
- JDBC連線資料庫步驟JDBC資料庫
- duplicate資料庫的操作步驟資料庫
- 資料庫優化的步驟資料庫優化
- 手動建立資料庫步驟資料庫
- kylix 資料庫應用簡介 (轉)資料庫
- Oracle資料庫從 9.2.0.1 到 9.2.0.8升級步驟 for winOracle資料庫
- PostgreSQL簡介及安裝步驟SQL
- oracle資料庫snap的設定Oracle資料庫
- 第1章 Oracle資料庫簡介-DBMSOracle資料庫
- 第1章 Oracle資料庫簡介-RMOracle資料庫
- 簡單oracle安裝步驟Oracle
- ORACLE RAC OCFS(步驟簡要)Oracle
- win10怎麼設定共享資料夾_win10設定共享資料夾步驟Win10
- linux設定共享資料夾的步驟是什麼Linux