Loading Oracle Text Thesurus
Is it possible to load the thesaurus below into oracle without human intervention, or command line ctxload avaliable.
John
RT Jon
BT John
Jon
RT John
BT Jonathan
Jonathan
RT Jon
BT Jonathan
I’m working on extending search functionality to use Oracle Text. At the moment Continuous Integration requires human intervention to load the Thesaurus.
Ant is executing sql and pl/sql which wipes the database and rebuilds the test schema, at the moment I’ve not been able to get it to load the thesaurus.
You can create and build a thesaurus using the ctx_thes package. You could create a plsql procedure that reads in the thesaurus from the file system using a bfile. Then you procedure can parse through the external file and make appropriate calls to the ctx_thes package.
If you can you store you thesaurus in XML format then you can leverage sql xml and oracle xmldb api's to parse through the file and load the thesaurus.
Hope this helps.
Similar Messages
-
Pre-loading Oracle text in memory with Oracle 12c
There is a white paper from Roger Ford that explains how to load the Oracle index in memory : http://www.oracle.com/technetwork/database/enterprise-edition/mem-load-082296.html
In our application, Oracle 12c, we are indexing a big XML field (which is stored as XMLType with storage secure file) with the PATH_SECTION_GROUP. If I don't load the I table (DR$..$I) into memory using the technique explained in the white paper then I cannot have decent performance (and especially not predictable performance, it looks like if the blocks from the TOKEN_INFO columns are not memory then performance can fall sharply)
But after migrating to oracle 12c, I got a different problem, which I can reproduce: when I create the index it is relatively small (as seen with ctx_report.index_size) and by applying the technique from the whitepaper, I can pin the DR$ I table into memory. But as soon as I do a ctx_ddl.optimize_index('Index','REBUILD') the size becomes much bigger and I can't pin the index in memory. Not sure if it is bug or not.
What I found as work-around is to build the index with the following storage options:
ctx_ddl.create_preference('TEST_STO','BASIC_STORAGE');
ctx_ddl.set_attribute ('TEST_STO', 'BIG_IO', 'YES' );
ctx_ddl.set_attribute ('TEST_STO', 'SEPARATE_OFFSETS', 'NO' );
so that the token_info column will be stored in a secure file. Then I can change the storage of that column to put it in the keep buffer cache, and write a procedure to read the LOB so that it will be loaded in the keep cache. The size of the LOB column is more or less the same as when creating the index without the BIG_IO option but it remains constant even after a ctx_dll.optimize_index. The procedure to read the LOB and to load it into the cache is very similar to the loaddollarR procedure from the white paper.
Because of the SDATA section, there is a new DR table (S table) and an IOT on top of it. This is not documented in the white paper (the white paper was written for Oracle 10g). In my case this DR$ S table is much used, and the IOT also, but putting it in the keep cache is not as important as the token_info column of the DR I table. A final note: doing SEPARATE_OFFSETS = 'YES' was very bad in my case, the combined size of the two columns is much bigger than having only the TOKEN_INFO column and both columns are read.
Here is an example on how to reproduce the problem with the size increasing when doing ctx_optimize
1. create the table
drop table test;
CREATE TABLE test
(ID NUMBER(9,0) NOT NULL ENABLE,
XML_DATA XMLTYPE
XMLTYPE COLUMN XML_DATA STORE AS SECUREFILE BINARY XML (tablespace users disable storage in row);
2. insert a few records
insert into test values(1,'<Book><TITLE>Tale of Two Cities</TITLE>It was the best of times.<Author NAME="Charles Dickens"> Born in England in the town, Stratford_Upon_Avon </Author></Book>');
insert into test values(2,'<BOOK><TITLE>The House of Mirth</TITLE>Written in 1905<Author NAME="Edith Wharton"> Wharton was born to George Frederic Jones and Lucretia Stevens Rhinelander in New York City.</Author></BOOK>');
insert into test values(3,'<BOOK><TITLE>Age of innocence</TITLE>She got a prize for it.<Author NAME="Edith Wharton"> Wharton was born to George Frederic Jones and Lucretia Stevens Rhinelander in New York City.</Author></BOOK>');
3. create the text index
drop index i_test;
exec ctx_ddl.create_section_group('TEST_SGP','PATH_SECTION_GROUP');
begin
CTX_DDL.ADD_SDATA_SECTION(group_name => 'TEST_SGP',
section_name => 'SData_02',
tag => 'SData_02',
datatype => 'varchar2');
end;
exec ctx_ddl.create_preference('TEST_STO','BASIC_STORAGE');
exec ctx_ddl.set_attribute('TEST_STO','I_TABLE_CLAUSE','tablespace USERS storage (initial 64K)');
exec ctx_ddl.set_attribute('TEST_STO','I_INDEX_CLAUSE','tablespace USERS storage (initial 64K) compress 2');
exec ctx_ddl.set_attribute ('TEST_STO', 'BIG_IO', 'NO' );
exec ctx_ddl.set_attribute ('TEST_STO', 'SEPARATE_OFFSETS', 'NO' );
create index I_TEST
on TEST (XML_DATA)
indextype is ctxsys.context
parameters('
section group "TEST_SGP"
storage "TEST_STO"
') parallel 2;
4. check the index size
select ctx_report.index_size('I_TEST') from dual;
it says :
TOTALS FOR INDEX TEST.I_TEST
TOTAL BLOCKS ALLOCATED: 104
TOTAL BLOCKS USED: 72
TOTAL BYTES ALLOCATED: 851,968 (832.00 KB)
TOTAL BYTES USED: 589,824 (576.00 KB)
4. optimize the index
exec ctx_ddl.optimize_index('I_TEST','REBUILD');
and now recompute the size, it says
TOTALS FOR INDEX TEST.I_TEST
TOTAL BLOCKS ALLOCATED: 1112
TOTAL BLOCKS USED: 1080
TOTAL BYTES ALLOCATED: 9,109,504 (8.69 MB)
TOTAL BYTES USED: 8,847,360 (8.44 MB)
which shows that it went from 576KB to 8.44MB. With a big index the difference is not so big, but still from 14G to 19G.
5. Workaround: use the BIG_IO option, so that the token_info column of the DR$ I table will be stored in a secure file and the size will stay relatively small. Then you can load this column in the cache using a procedure similar to
alter table DR$I_TEST$I storage (buffer_pool keep);
alter table dr$i_test$i modify lob(token_info) (cache storage (buffer_pool keep));
rem: now we must read the lob so that it will be loaded in the keep buffer pool, use the prccedure below
create or replace procedure loadTokenInfo is
type c_type is ref cursor;
c2 c_type;
s varchar2(2000);
b blob;
buff varchar2(100);
siz number;
off number;
cntr number;
begin
s := 'select token_info from DR$i_test$I';
open c2 for s;
loop
fetch c2 into b;
exit when c2%notfound;
siz := 10;
off := 1;
cntr := 0;
if dbms_lob.getlength(b) > 0 then
begin
loop
dbms_lob.read(b, siz, off, buff);
cntr := cntr + 1;
off := off + 4096;
end loop;
exception when no_data_found then
if cntr > 0 then
dbms_output.put_line('4K chunks fetched: '||cntr);
end if;
end;
end if;
end loop;
end;
Rgds, PierreI have been working a lot on that issue recently, I can give some more info.
First I totally agree with you, I don't like to use the keep_pool and I would love to avoid it. On the other hand, we have a specific use case : 90% of the activity in the DB is done by queuing and dbms_scheduler jobs where response time does not matter. All those processes are probably filling the buffer cache. We have a customer facing application that uses the text index to search the database : performance is critical for them.
What kind of performance do you have with your application ?
In my case, I have learned the hard way that having the index in memory (the DR$I table in fact) is the key : if it is not, then performance is poor. I find it reasonable to pin the DR$I table in memory and if you look at competitors this is what they do. With MongoDB they explicitly says that the index must be in memory. With elasticsearch, they use JVM's that are also in memory. And effectively, if you look at the awr report, you will see that Oracle is continuously accessing the DR$I table, there is a SQL similar to
SELECT /*+ DYNAMIC_SAMPLING(0) INDEX(i) */
TOKEN_FIRST, TOKEN_LAST, TOKEN_COUNT, ROWID
FROM DR$idxname$I
WHERE TOKEN_TEXT = :word AND TOKEN_TYPE = :wtype
ORDER BY TOKEN_TEXT, TOKEN_TYPE, TOKEN_FIRST
which is continuously done.
I think that the algorithm used by Oracle to keep blocks in cache is too complex. A just realized that in 12.1.0.2 (was released last week) there is finally a "killer" functionality, the in-memory parameters, with which you can pin tables or columns in memory with compression, etc. this looks ideal for the text index, I hope that R. Ford will finally update his white paper :-)
But my other problem was that the optimize_index in REBUILD mode caused the DR$I table to double in size : it seems crazy that this was closed as not a bug but it was and I can't do anything about it. It is a bug in my opinion, because the create index command and "alter index rebuild" command both result in a much smaller index, so why would the guys that developped the optimize function (is it another team, using another algorithm ?) make the index two times bigger ?
And for that the track I have been following is to put the index in a 16K tablespace : in this case the space used by the index remains more or less flat (increases but much more reasonably). The difficulty here is to pin the index in memory because the trick of R. Ford was not working anymore.
What worked:
first set the keep_pool to zero and set the db_16k_cache_size to instead. Then change the storage preference to make sure that everything you want to cache (mostly the DR$I) table come in the tablespace with the non-standard block size of 16k.
Then comes the tricky part : the pre-loading of the data in the buffer cache. The problem is that with Oracle 12c, Oracle will use direct_path_read for FTS which basically means that it bypasses the cache and read directory from file to the PGA !!! There is an event to avoid that, I was lucky to find it on a blog (I can't remember which, sorry for the credit).
I ended-up doing that. the events to 10949 is to avoid the direct path reads issue.
alter session set events '10949 trace name context forever, level 1';
alter table DR#idxname0001$I cache;
alter table DR#idxname0002$I cache;
alter table DR#idxname0003$I cache;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0001$I;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0002$I;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0003$I;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0001$I ITAB;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0002$I ITAB;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0003$I ITAB;
It worked. With a big relief I expected to take some time out, but there was a last surprise. The command
exec ctx_ddl.optimize_index(idx_name=>'idxname',part_name=>'partname',optlevel=>'REBUILD');
gqve the following
ERROR at line 1:
ORA-20000: Oracle Text error:
DRG-50857: oracle error in drftoptrebxch
ORA-14097: column type or size mismatch in ALTER TABLE EXCHANGE PARTITION
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.CTX_DDL", line 1141
ORA-06512: at line 1
Which is very much exactly described in a metalink note 1645634.1 but in the case of a non-partitioned index. The work-around given seemed very logical but it did not work in the case of a partitioned index. After experimenting, I found out that the bug occurs when the partitioned index is created with dbms_pclxutil.build_part_index procedure (this enables enables intra-partition parallelism in the index creation process). This is a very annoying and stupid bug, maybe there is a work-around, but did not find it on metalink
Other points of attention with the text index creation (stuff that surprised me at first !) ;
- if you use the dbms_pclxutil package, then the ctx_output logging does not work, because the index is created immediately and then populated in the background via dbms_jobs.
- this in combination with the fact that if you are on a RAC, you won't see any activity on the box can be very frightening : this is because oracle can choose to start the workers on the other node.
I understand much better how the text indexing works, I think it is a great technology which can scale via partitioning. But like always the design of the application is crucial, most of our problems come from the fact that we did not choose the right sectioning (we choosed PATH_SECTION_GROUP while XML_SECTION_GROUP is so much better IMO). Maybe later I can convince the dev to change the sectionining, especially because SDATA and MDATA section are not supported with PATCH_SECTION_GROUP (although it seems to work, even though we had one occurence of a bad result linked to the existence of SDATA in the index definition). Also the whole problematic of mixed structured/unstructured searches is completly tackled if one use XML_SECTION_GROUP with MDATA/SDATA (but of course the app was written for Oracle 10...)
Regards, Pierre -
11gr2 installation hanging at step 7 during Processing Oracle Text 11.2.0.
Hi,
I am trying to install 11gr2 software on my linux 64 bit server.
I had installled the same 11gr2 software successfully on the same server without any issues.
Now i want another oracle home. But the installation is hanging at step 7, 8% was completed.
The details tab showing
Verifying whether Central Inventory is locked by any other OUI session...
Central Inventory is not locked.
Loading products list. Please wait.
Loading products. Please wait.
Analyzing dependencies
Setting up install types
Executing pre-requisites
Loading Oracle Database 11g
Loading Enterprise Edition Options
Loading Oracle Partitioning
Loading Oracle Spatial
Loading Oracle OLAP
Loading Oracle Database 11g
Loading Oracle Net Services
Loading Oracle Text
Loading Oracle Net Listener
Loading Oracle Enterprise Manager Console DB
Loading HAS Files for DB
Loading Oracle Internet Directory Client
Loading Oracle Advanced Security
Loading Oracle JVM
Loading Oracle XML Development Kit
Loading Database Configuration and Upgrade Assistants
Loading Oracle Net
Loading Oracle Multimedia
Loading Oracle Multimedia Locator
Loading Oracle Call Interface (OCI)
Loading SQL*Plus
Loading Oracle Netca Client
Loading Enterprise Manager Agent
Loading Oracle Database Utilities
Loading Oracle Programmer
Loading Oracle Database Gateway for ODBC
Loading Generic Connectivity Common Files
Loading PL/SQL
Loading Oracle Recovery Manager
Loading Assistant Common Files
Loading Buildtools Common Files
Loading Oracle LDAP administration
Loading Oracle Help for the Web
Loading Installation Common Files
Loading Precompiler Common Files
Loading HAS Common Files
Loading Enterprise Manager plugin Common Files
Loading Oracle UIX
Loading Oracle Clusterware RDBMS Files
Loading Cluster Verification Utility Common Files
Loading Oracle Wallet Manager
Loading Oracle Security Developer Tools
Loading XML Parser for Java
Loading Enterprise Manager Minimal Integration
Loading Oracle Notification Service
Loading Oracle Database User Interface
Loading Oracle ODBC Driver
Loading SQL*Plus Files for Instant Client
Loading Required Support Files
Loading Oracle Globalization Support
Loading Database SQL Scripts
Loading OLAP SQL Scripts
Loading PL/SQL Embedded Gateway
Loading Oracle Locale Builder
Loading Character Set Migration Utility
Loading Oracle Java Client
Loading Oracle Multimedia Client Option
Loading Oracle JDBC/THIN Interfaces
Loading Oracle Universal Connection Pool
Loading Secure Socket Layer
Loading Oracle Net Required Support Files
Loading Oracle Code Editor
Loading Oracle Containers for Java
Loading JAccelerator (COMPANION)
Loading Perl Interpreter
Loading Oracle Quality of Service Management (Client)
Loading Deinstallation Tool
Loading Perl Modules
Loading Enterprise Manager Common Files
Loading Installation Plugin Files
Loading Expat libraries
Loading XML Parser for Oracle JVM
Loading Oracle XML Query
Loading Oracle Message Gateway Common Files
Loading Oracle Starter Database
Loading Sample Schema Data
Loading Oracle Help For Java
Loading Oracle Core Required Support Files
Loading Oracle Multimedia Locator RDBMS Files
Loading Oracle JDBC/OCI Instant Client
Loading Oracle Multimedia Annotator
Loading Oracle Multimedia Java Advanced Imaging
Loading Oracle Database 11g Multimedia Files
Loading Precompiler Required Support Files
Loading Oracle Text Required Support Files
Loading Oracle Notification Service (eONS)
Loading Oracle 11g Warehouse Builder Required Files
Loading Parser Generator Required Support Files
Loading regexp
Loading Agent Required Support Files
Loading Enterprise Manager Agent Core Files
Loading Enterprise Manager Common Core Files
Loading Enterprise Manager Grid Control Core Files
Loading Enterprise Manager Database Plugin -- Agent Support
Loading Enterprise Manager Repository Core Files
Loading Enterprise Manager Database Plugin -- Repository Support
Loading Provisioning Advisor Framework
Loading Exadata Storage Server
Loading Oracle Globalization Support
Loading RDBMS Required Support Files
Loading Database Workspace Manager
Loading SQLJ Runtime
Loading RDBMS Required Support Files for Instant Client
Loading XDK Required Support Files
Loading Oracle Application Express
Loading Oracle SQL Developer
Loading Oracle JDBC Server Support Package
Loading Oracle Ice Browser
Loading Oracle Display Fonts
Loading SQL*Plus Required Support Files
Loading Oracle RAC Required Support Files-HAS
Loading Oracle Database Vault option
Loading Platform Required Support Files
Loading Oracle OLAP API
Loading Oracle OLAP RDBMS Files
Loading Oracle Data Mining RDBMS Files
Loading Oracle Label Security
Loading Oracle Database Vault J2EE Application
Loading Oracle Real Application Testing
Loading Oracle JFC Extended Windowing Toolkit
Loading Oracle Extended Windowing Toolkit
Loading Bali Share
Loading SSL Required Support Files for InstantClient
Loading LDAP Required Support Files
Loading Oracle ODBC Driverfor Instant Client
Loading Oracle Configuration Manager
Loading Oracle Database Deconfiguration
Loading Oracle RAC Deconfiguration
Loading Oracle DBCA Deconfiguration
Loading Oracle Configuration Manager Deconfiguration
Loading Oracle Universal Installer
Loading Oracle One-Off Patch Installer
Loading Installer SDK Component
Loading Sun JDK
Loading dialogs for Oracle Database 11g
Loading dialogs for Enterprise Edition Options
Loading dialogs for Oracle Partitioning
Loading dialogs for Oracle Spatial
Loading dialogs for Oracle OLAP
Loading dialogs for Oracle Database 11g
Loading dialogs for Oracle Net Services
Loading dialogs for Oracle Text
Loading dialogs for Oracle Net Listener
Loading dialogs for Oracle Enterprise Manager Console DB
Loading dialogs for HAS Files for DB
Loading dialogs for Oracle Internet Directory Client
Loading dialogs for Oracle Advanced Security
Loading dialogs for Oracle JVM
Loading dialogs for Oracle XML Development Kit
Loading dialogs for Database Configuration and Upgrade Assistants
Loading dialogs for Oracle Net
Loading dialogs for Oracle Multimedia
Loading dialogs for Oracle Multimedia Locator
Loading dialogs for Oracle Call Interface (OCI)
Loading dialogs for SQL*Plus
Loading dialogs for Oracle Netca Client
Loading dialogs for Enterprise Manager Agent
Loading dialogs for Oracle Database Utilities
Loading dialogs for Oracle Programmer
Loading dialogs for Oracle Database Gateway for ODBC
Loading dialogs for Generic Connectivity Common Files
Loading dialogs for PL/SQL
Loading dialogs for Oracle Recovery Manager
Loading dialogs for Assistant Common Files
Loading dialogs for Buildtools Common Files
Loading dialogs for Oracle LDAP administration
Loading dialogs for Oracle Help for the Web
Loading dialogs for Installation Common Files
Loading dialogs for Precompiler Common Files
Loading dialogs for HAS Common Files
Loading dialogs for Enterprise Manager plugin Common Files
Loading dialogs for Oracle UIX
Loading dialogs for Oracle Clusterware RDBMS Files
Loading dialogs for Cluster Verification Utility Common Files
Loading dialogs for Oracle Wallet Manager
Loading dialogs for Oracle Security Developer Tools
Loading dialogs for XML Parser for Java
Loading dialogs for Enterprise Manager Minimal Integration
Loading dialogs for Oracle Notification Service
Loading dialogs for Oracle Database User Interface
Loading dialogs for Oracle ODBC Driver
Loading dialogs for SQL*Plus Files for Instant Client
Loading dialogs for Required Support Files
Loading dialogs for Oracle Globalization Support
Loading dialogs for Database SQL Scripts
Loading dialogs for OLAP SQL Scripts
Loading dialogs for PL/SQL Embedded Gateway
Loading dialogs for Oracle Locale Builder
Loading dialogs for Character Set Migration Utility
Loading dialogs for Oracle Java Client
Loading dialogs for Oracle Multimedia Client Option
Loading dialogs for Oracle JDBC/THIN Interfaces
Loading dialogs for Oracle Universal Connection Pool
Loading dialogs for Secure Socket Layer
Loading dialogs for Oracle Net Required Support Files
Loading dialogs for Oracle Code Editor
Loading dialogs for Oracle Containers for Java
Loading dialogs for JAccelerator (COMPANION)
Loading dialogs for Perl Interpreter
Loading dialogs for Oracle Quality of Service Management (Client)
Loading dialogs for Deinstallation Tool
Loading dialogs for Perl Modules
Loading dialogs for Enterprise Manager Common Files
Loading dialogs for Installation Plugin Files
Loading dialogs for Expat libraries
Loading dialogs for XML Parser for Oracle JVM
Loading dialogs for Oracle XML Query
Loading dialogs for Oracle Message Gateway Common Files
Loading dialogs for Oracle Starter Database
Loading dialogs for Sample Schema Data
Loading dialogs for Oracle Help For Java
Loading dialogs for Oracle Core Required Support Files
Loading dialogs for Oracle Multimedia Locator RDBMS Files
Loading dialogs for Oracle JDBC/OCI Instant Client
Loading dialogs for Oracle Multimedia Annotator
Loading dialogs for Oracle Multimedia Java Advanced Imaging
Loading dialogs for Oracle Database 11g Multimedia Files
Loading dialogs for Precompiler Required Support Files
Loading dialogs for Oracle Text Required Support Files
Loading dialogs for Oracle Notification Service (eONS)
Loading dialogs for Oracle 11g Warehouse Builder Required Files
Loading dialogs for Parser Generator Required Support Files
Loading dialogs for regexp
Loading dialogs for Agent Required Support Files
Loading dialogs for Enterprise Manager Agent Core Files
Loading dialogs for Enterprise Manager Common Core Files
Loading dialogs for Enterprise Manager Grid Control Core Files
Loading dialogs for Enterprise Manager Database Plugin -- Agent Support
Loading dialogs for Enterprise Manager Repository Core Files
Loading dialogs for Enterprise Manager Database Plugin -- Repository Support
Loading dialogs for Provisioning Advisor Framework
Loading dialogs for Exadata Storage Server
Loading dialogs for Oracle Globalization Support
Loading dialogs for RDBMS Required Support Files
Loading dialogs for Database Workspace Manager
Loading dialogs for SQLJ Runtime
Loading dialogs for RDBMS Required Support Files for Instant Client
Loading dialogs for XDK Required Support Files
Loading dialogs for Oracle Application Express
Loading dialogs for Oracle SQL Developer
Loading dialogs for Oracle JDBC Server Support Package
Loading dialogs for Oracle Ice Browser
Loading dialogs for Oracle Display Fonts
Loading dialogs for SQL*Plus Required Support Files
Loading dialogs for Oracle RAC Required Support Files-HAS
Loading dialogs for Oracle Database Vault option
Loading dialogs for Platform Required Support Files
Loading dialogs for Oracle OLAP API
Loading dialogs for Oracle OLAP RDBMS Files
Loading dialogs for Oracle Data Mining RDBMS Files
Loading dialogs for Oracle Label Security
Loading dialogs for Oracle Database Vault J2EE Application
Loading dialogs for Oracle Real Application Testing
Loading dialogs for Oracle JFC Extended Windowing Toolkit
Loading dialogs for Oracle Extended Windowing Toolkit
Loading dialogs for Bali Share
Loading dialogs for SSL Required Support Files for InstantClient
Loading dialogs for LDAP Required Support Files
Loading dialogs for Oracle ODBC Driverfor Instant Client
Loading dialogs for Oracle Configuration Manager
Loading dialogs for Oracle Database Deconfiguration
Loading dialogs for Oracle RAC Deconfiguration
Loading dialogs for Oracle DBCA Deconfiguration
Loading dialogs for Oracle Configuration Manager Deconfiguration
Loading dialogs for Oracle Universal Installer
Loading dialogs for Oracle One-Off Patch Installer
Loading dialogs for Installer SDK Component
Loading dialogs for Sun JDK
Processing Oracle Database 11g 11.2.0.1.0
Processing Enterprise Edition Options 11.2.0.1.0
Processing Oracle Partitioning 11.2.0.1.0
Processing Oracle Spatial 11.2.0.1.0
Processing Oracle OLAP 11.2.0.1.0
Processing Oracle Database 11g 11.2.0.1.0
Processing Oracle Net Services 11.2.0.1.0
Processing Oracle Text 11.2.0.1.0
Thanks,
KavithaHi,
First ORACLE Home : /u02/oracle/11.2.0
Now using ORACLE Home: /u03/HFMDCP/11.2.0
The log showing below information:
driveName = /dev/shm
returnInMegaBytes = true
INFO: Query Returned: 3992
INFO: Setting variable 'n_POSIXMemSize' to '3992'. Received the value from the variable calculation.
INFO: Setting value of child variable b_useRegistration of oracle.sysman.ccr 10.3.1.1.0 to false
INFO: *** Entering Component: oracle.options installation
INFO: Processing Enterprise Edition Options 11.2.0.1.0
INFO: Processing Enterprise Edition Options 11.2.0.1.0
INFO: *** Entering Component: oracle.rdbms.partitioning installation
INFO: Processing Oracle Partitioning 11.2.0.1.0
INFO: Processing Oracle Partitioning 11.2.0.1.0
INFO: Calling Query generalQueries10.2.0.2.0 getOSName
INFO: Query Returned: Linux
INFO: Setting variable 's_operatingSystem' to 'Linux'. Received the value from the variable calculation.
INFO: Setting variable 's_makeLogFile' to 'make.log'. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 isCurrentPlatformInGroup
platGroup = WINDOWS
INFO: Query Returned: false
INFO: Setting variable 'b_isWINDOWS' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 's_installLogDir' to '/u03/HFMDCP/11.2.0/install/'. Received the value from the variable calculation.
INFO: *** Entering Component: oracle.sdo installation
INFO: Processing Oracle Spatial 11.2.0.1.0
INFO: Processing Oracle Spatial 11.2.0.1.0
INFO: Calling Query generalQueries10.2.0.2.0 getOSName
INFO: Query Returned: Linux
INFO: Setting variable 's_operatingSystem' to 'Linux'. Received the value from the variable calculation.
INFO: Setting variable 's_makeLogFile' to 'make.log'. Received the value from the variable calculation.
INFO: Setting variable 's_OPSSelectedNodes' to ''. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 isCurrentPlatformInGroup
platGroup = UNIX
INFO: Query Returned: true
INFO: Setting variable 'b_isUNIX' to 'true'. Received the value from the variable calculation.
INFO: Setting variable 'VERSION' to '9.2.0.0.0 Beta'. Received the value from the variable calculation.
INFO: Setting variable 'ORDSYS_PASSWORD' to '*Protected value, not to be logged*'. Received the value from the variable calculation.
INFO: Setting variable 'MDSYS_PASSWORD' to '*Protected value, not to be logged*'. Received the value from the variable calculation.
INFO: Setting variable 'MD' to 'md'. Received the value from the variable calculation.
INFO: Setting variable 'DESCRIPTION' to 'Oracle8 Spatial Cartridge'. Received the value from the variable calculation.
INFO: Setting variable 's_sourceInstallScript' to '/u03/HFMDCP/11.2.0/md/admin/mdinst.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_sourceDeinstallScript' to '/u03/HFMDCP/11.2.0/md/admin/mddins.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_sourceDeinstallScript' to '/u03/HFMDCP/11.2.0/md/admin/mddins.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_installLogDir' to '/u03/HFMDCP/11.2.0/install/'. Received the value from the variable calculation.
INFO: Setting variable 's_destInstallScript' to '/u03/HFMDCP/11.2.0/md/admin/mdinst.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_destDeinstallScript' to '/u03/HFMDCP/11.2.0/md/admin/mddins.sql'. Received the value from the variable calculation.
INFO: Setting variable 'sl_processList' to '/u03/HFMDCP/11.2.0/bin/oracle'. Received the value from the variable calculation.
INFO: *** Entering Component: oracle.oraolap installation
INFO: Processing Oracle OLAP 11.2.0.1.0
INFO: Processing Oracle OLAP 11.2.0.1.0
INFO: Calling Query generalQueries10.2.0.2.0 getOSName
INFO: Query Returned: Linux
INFO: Setting variable 's_operatingSystem' to 'Linux'. Received the value from the variable calculation.
INFO: Setting variable 's_makeLogFile' to 'make.log'. Received the value from the variable calculation.
INFO: Setting variable 's_installLogDir' to '/u03/HFMDCP/11.2.0/install/'. Received the value from the variable calculation.
INFO: *** Entering Component: oracle.rdbms installation
INFO: Processing Oracle Database 11g 11.2.0.1.0
INFO: Processing Oracle Database 11g 11.2.0.1.0
INFO: Calling Query unixQueries10.1.0.2.0 getGroups
INFO: Query Returned: dba
INFO: Setting variable 'sl_groupChoices' to 'dba'. Received the value from the variable calculation.
INFO: Setting variable 's_version' to '9.2.0.0.0'. Received the value from the variable calculation.
INFO: Setting variable 's_verifierName' to 'verifier15.jar'. Received the value from the variable calculation.
INFO: Setting variable 's_sidToMigrate' to ''. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 getOSName
INFO: Query Returned: Linux
INFO: Setting variable 's_operatingSystem' to 'Linux'. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 getenv
name = LD_LIBRARY_PATH
INFO: Query Returned: /tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/lib/amd64/server:/tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/lib/amd64:/tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/../lib/amd64
INFO: Setting variable 's_oldLDLibPath' to '/tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/lib/amd64/server:/tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/lib/amd64:/tmp/OraInstall2011-05-11_10-43-27AM/jdk/jre/../lib/amd64'. Received the value from the variable calculation.
INFO: Setting variable 's_ojdbc5Name' to 'ojdbc5.jar'. Received the value from the variable calculation.
INFO: Setting variable 's_nameOfBundle' to 'EE'. Received the value from the variable calculation.
INFO: Setting variable 's_makeLogFile' to 'make.log'. Received the value from the variable calculation.
INFO: Setting variable 's_lowResourceDialogPrompt' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_ldapjclntName' to 'ldapjclnt11.jar'. Received the value from the variable calculation.
INFO: Setting variable 's_jssl11Name' to 'jssl-1_1.jar'. Received the value from the variable calculation.
INFO: Calling Query areasQueries10.2.0.1.0 getProductHome
name = oracle.jdk
startVersion = 1.5.0.0.0
endVersion = 9.9.9.9.9
acceptCompatible = null
INFO: Query Returned: /u03/HFMDCP/11.2.0/jdk
INFO: Setting variable 's_jreLocation' to '/u03/HFMDCP/11.2.0/jdk/jre/'. Received the value from the variable calculation.
INFO: Setting variable 's_javaxssl12Name' to 'javax-ssl-1_2.jar'. Received the value from the variable calculation.
INFO: Setting variable 's_groupDialogPrompt' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_filemapLocation' to '/opt/ORCLfmap'. Received the value from the variable calculation.
INFO: Setting variable 's_emailServer' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_emailAddress' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_defaultDBName' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_c' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_OPSSelectedNodes' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_OPSNodeInfoString' to 'NO_VALUE'. Received the value from the variable calculation.
INFO: Setting variable 's_OPSClusterUser' to 'NO_VALUE'. Received the value from the variable calculation.
INFO: Setting variable 's_OPSClusterPassword' to '*Protected value, not to be logged*'. Received the value from the variable calculation.
INFO: Setting variable 's_DBNamePrompt' to 'Every Oracle 11g database is uniquely identified by a Global Database Name, typically of the form "name.domain". Enter the Global Database Name for this database.'. Received the value from the variable calculation.
INFO: Setting variable 's_DBName' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_DBDomain' to ''. Received the value from the variable calculation.
INFO: Setting variable 'init_shared_pool_size' to '10000000'. Received the value from the variable calculation.
INFO: Setting variable 'init_sequence_cache_hash_buckets' to '10'. Received the value from the variable calculation.
INFO: Setting variable 'init_sequence_cache_entries' to '10'. Received the value from the variable calculation.
INFO: Setting variable 'init_processes' to '59'. Received the value from the variable calculation.
INFO: Setting variable 'init_path' to ''. Received the value from the variable calculation.
INFO: Setting variable 'init_open_links' to '4'. Received the value from the variable calculation.
INFO: Setting variable 'init_log_buffer' to '8192'. Received the value from the variable calculation.
INFO: Setting variable 'init_job_queue_processes' to '2'. Received the value from the variable calculation.
INFO: Setting variable 'init_job_queue_interval' to '10'. Received the value from the variable calculation.
INFO: Setting variable 'init_dml_locks' to '100'. Received the value from the variable calculation.
INFO: Setting variable 'init_distributed_transactions' to '5'. Received the value from the variable calculation.
INFO: Setting variable 'init_distributed_lock_timeout' to '300'. Received the value from the variable calculation.
INFO: Setting variable 'init_db_file_multiblock_read_count' to '8'. Received the value from the variable calculation.
INFO: Setting variable 'init_db_block_buffers' to '1000'. Received the value from the variable calculation.
INFO: Setting variable 'build_log_path' to ''. Received the value from the variable calculation.
INFO: Setting variable 'b_promptForGroups' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_orabaseContainsOrahome' to 'true'. Received the value from the variable calculation.
INFO: Setting variable 'b_lowResource' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_launchDBMA' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_javaOptionBeingInstalled' to 'false'. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 isCurrentPlatformInGroup
platGroup = WINDOWS
INFO: Query Returned: false
INFO: Setting variable 'b_isWINDOWS' to 'false'. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 isCurrentPlatformInGroup
platGroup = UNIX
INFO: Query Returned: true
INFO: Setting variable 'b_isUNIX' to 'true'. Received the value from the variable calculation.
INFO: Setting variable 'b_isDBup' to 'true'. Received the value from the variable calculation.
INFO: Setting variable 'b_giInstall' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 's_xslLocation' to '/u03/HFMDCP/11.2.0/rdbms/xml/xsl'. Received the value from the variable calculation.
INFO: Setting variable 's_verifierDir' to '/u03/HFMDCP/11.2.0/jlib'. Received the value from the variable calculation.
INFO: Setting variable 's_shPath' to '/u03/HFMDCP/11.2.0/demo/schema/sales_history/'. Received the value from the variable calculation.
INFO: Setting variable 's_pmPath' to '/u03/HFMDCP/11.2.0/demo/schema/product_media/'. Received the value from the variable calculation.
INFO: Setting variable 's_oradimlocation' to '/u03/HFMDCP/11.2.0\bin'. Received the value from the variable calculation.
INFO: Setting variable 's_oradbalocation' to '/u03/HFMDCP/11.2.0\Database'. Received the value from the variable calculation.
INFO: Setting variable 's_operGroup' to 'dba'. Received the value from the variable calculation.
INFO: Setting variable 's_oePath' to '/u03/HFMDCP/11.2.0/demo/schema/order_entry/'. Received the value from the variable calculation.
INFO: Setting variable 's_netAPILoc' to '/u03/HFMDCP/11.2.0/jlib'. Received the value from the variable calculation.
INFO: Setting variable 's_mkdirFile' to '/u03/HFMDCP/11.2.0/demo/schema/mk_dir.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_logPath' to '/u03/HFMDCP/11.2.0/demo/schema/log/'. Received the value from the variable calculation.
INFO: Setting variable 's_libDir' to '/u03/HFMDCP/11.2.0/jdbc/lib'. Received the value from the variable calculation.
INFO: Setting variable 's_jlibDir' to '/u03/HFMDCP/11.2.0/rdbms/jlib'. Received the value from the variable calculation.
INFO: Setting variable 's_installLogDir' to '/u03/HFMDCP/11.2.0/install/'. Received the value from the variable calculation.
INFO: Setting variable 's_instMkdirFile' to '/u03/HFMDCP/11.2.0/demo/schema/mk_dir.sql.sbs'. Received the value from the variable calculation.
INFO: Setting variable 's_initmetaSource' to '/u03/HFMDCP/11.2.0/rdbms/install/sbs/initmeta.sbs'. Received the value from the variable calculation.
INFO: Setting variable 's_initmetaDest' to '/u03/HFMDCP/11.2.0/rdbms/admin/initmeta.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_ezLocation' to '/u03/HFMDCP/11.2.0/instantclient'. Received the value from the variable calculation.
INFO: Setting variable 's_dbmssmlSource' to '/u03/HFMDCP/11.2.0/rdbms/install/sbs/dbmssml.sbs'. Received the value from the variable calculation.
INFO: Setting variable 's_dbmssmlDest' to '/u03/HFMDCP/11.2.0/rdbms/admin/dbmssml.sql'. Received the value from the variable calculation.
INFO: Setting variable 's_dbaGroup' to 'dba'. Received the value from the variable calculation.
INFO: Setting variable 's_asmGroup' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_RDBMS81' to '/u03/HFMDCP/11.2.0\RDBMS'. Received the value from the variable calculation.
INFO: Setting variable 'b_isUXW' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isSolaris' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isSequent' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isIntel_Solaris' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isHPI' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isHP' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isDec' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isDG' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'b_isAix' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'sl_processList' to '/u03/HFMDCP/11.2.0/bin/ctxsrv,/u03/HFMDCP/11.2.0/bin/dbsnmp,/u03/HFMDCP/11.2.0/bin/extproc,/u03/HFMDCP/11.2.0/bin/oracle'. Received the value from the variable calculation.
INFO: Setting variable 's_OSDSharelibExt' to '.so'. Received the value from the variable calculation.
INFO: Setting variable 'SO_EXT' to 'so'. Received the value from the variable calculation.
INFO: Setting variable 's_unixConfigFile' to '/u03/HFMDCP/11.2.0/rdbms/lib/config.c'. Received the value from the variable calculation.
INFO: Setting value of child variable s_emailServer of oracle.sysman.console.db 11.2.0.1.0 to
INFO: Setting value of child variable s_emailAddress of oracle.sysman.console.db 11.2.0.1.0 to
INFO: *** Entering Component: oracle.network installation
INFO: Processing Oracle Net Services 11.2.0.1.0
INFO: Processing Oracle Net Services 11.2.0.1.0
INFO: *** Entering Component: oracle.ctx installation
INFO: Processing Oracle Text 11.2.0.1.0
INFO: Processing Oracle Text 11.2.0.1.0
INFO: Setting variable 's_version' to '9.2.0.0.0 Beta'. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 getOSName
INFO: Query Returned: Linux
INFO: Setting variable 's_operatingSystem' to 'Linux'. Received the value from the variable calculation.
INFO: Setting variable 's_makeLogFile' to 'make.log'. Received the value from the variable calculation.
INFO: Setting variable 's_OPSSelectedNodes' to ''. Received the value from the variable calculation.
INFO: Calling Query generalQueries10.2.0.2.0 isCurrentPlatformInGroup
platGroup = UNIX
INFO: Query Returned: true
INFO: Setting variable 'b_isUNIX' to 'true'. Received the value from the variable calculation.
INFO: Setting variable 's_installLogDir' to '/u03/HFMDCP/11.2.0/install/'. Received the value from the variable calculation.
INFO: Setting variable 's_OracleHomeKeyWow6432Node' to 'Wow6432Node'. Received the value from the variable calculation.
INFO: Setting variable 'b_isWinX64' to 'false'. Received the value from the variable calculation.
INFO: Setting variable 'sl_processList' to '/u03/HFMDCP/11.2.0/bin/ctxsrv,/u03/HFMDCP/11.2.0/bin/oracle'. Received the value from the variable calculation.
INFO: Setting variable 'oracle_key' to ''. Received the value from the variable calculation.
INFO: Setting variable 's_ctxx_old_location' to '/u03/HFMDCP/11.2.0/ctx/lib/libctxx9.so'. Received the value from the variable calculation.
INFO: Setting variable 's_ctxx_location' to '/u03/HFMDCP/11.2.0/lib/libctxx9.so'. Received the value from the variable calculation.
INFO: Calling Query RunningProcessQuery11.2.0.1.0 getRunningProcess
multiParamName = /u03/HFMDCP/11.2.0/bin/ctxsrv,/u03/HFMDCP/11.2.0/bin/oracle
Thanks,
Kavitha -
"how to load a text file to oracle table"
hi to all
can anybody help me "how to load a text file to oracle table", this is first time i am doing, plz give me steps.
Regards
MKhaleelUsage: SQLLOAD keyword=value [,keyword=value,...]
Valid Keywords:
userid -- ORACLE username/password
control -- Control file name
log -- Log file name
bad -- Bad file name
data -- Data file name
discard -- Discard file name
discardmax -- Number of discards to allow (Default all)
skip -- Number of logical records to skip (Default 0)
load -- Number of logical records to load (Default all)
errors -- Number of errors to allow (Default 50)
rows -- Number of rows in conventional path bind array or between direct path data saves (Default: Conventional path 64, Direct path all)
bindsize -- Size of conventional path bind array in bytes (Default 256000)
silent -- Suppress messages during run (header, feedback, errors, discards, partitions)
direct -- use direct path (Default FALSE)
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)
file -- File to allocate extents from
skip_unusable_indexes -- disallow/allow unusable indexes or index partitions (Default FALSE)
skip_index_maintenance -- do not maintain indexes, mark affected indexes as unusable (Default FALSE)
commit_discontinued -- commit loaded rows when load is discontinued (Default FALSE)
readsize -- Size of Read buffer (Default 1048576)
external_table -- use external table for load; NOT_USED, GENERATE_ONLY, EXECUTE
(Default NOT_USED)
columnarrayrows -- Number of rows for direct path column array (Default 5000)
streamsize -- Size of direct path stream buffer in bytes (Default 256000)
multithreading -- use multithreading in direct path
resumable -- enable or disable resumable for current session (Default FALSE)
resumable_name -- text string to help identify resumable statement
resumable_timeout -- wait time (in seconds) for RESUMABLE (Default 7200)
PLEASE NOTE: Command-line parameters may be specified either by position or by keywords. An example of the former case is 'sqlldr scott/tiger foo'; an example of the latter is 'sqlldr control=foo userid=scott/tiger'. One may specify parameters by position before but not after parameters specified by keywords. For example, 'sqlldr scott/tiger control=foo logfile=log' is allowed, but 'sqlldr scott/tiger control=foo log' is not, even though the position of the parameter 'log' is correct.
SQLLDR USERID=GROWSTAR/[email protected] CONTROL=D:\PFS2004.CTL LOG=D:\PFS2004.LOG BAD=D:\PFS2004.BAD DATA=D:\PFS2004.CSV
SQLLDR USERID=GROWSTAR/[email protected] CONTROL=D:\CLAB2004.CTL LOG=D:\CLAB2004.LOG BAD=D:\CLAB2004.BAD DATA=D:\CLAB2004.CSV
SQLLDR USERID=GROWSTAR/[email protected] CONTROL=D:\GROW\DEACTIVATESTAFF\DEACTIVATESTAFF.CTL LOG=D:\GROW\DEACTIVATESTAFF\DEACTIVATESTAFF.LOG BAD=D:\GROW\DEACTIVATESTAFF\DEACTIVATESTAFF.BAD DATA=D:\GROW\DEACTIVATESTAFF\DEACTIVATESTAFF.CSV -
Performance issues and options to reduce load with Oracle text implementation
Hi Experts,
My database on Oracle 11.2.0.2 on Linux. We have Oracle Text implemented for fuzzy search. Our oracle text indexes are defined as sync on commit as we can not afford to have stale data. Now our application does literally thousands of inserts/updates/deletes to those columns where we have these Oracle text indexes defined. As a result, we are seeing a lot of performance impact due to the oracle text sync routines being called on each commit. We are doing the index optimization every night (full optimization every night at 3 am). The oracle text index related internal operations are showing up as top sql in our AWR report and there are concerns that it is causing lot of load on the DB. Since we do the full index optimization only once at night, I am thinking should I change that , and if I do so, will it help us?
For example here are some data from my one day's AWR report:
Elapsed Time (s)
Executions
Elapsed Time per Exec (s)
%Total
%CPU
%IO
SQL Id
SQL Module
SQL Text
27,386.25
305,441
0.09
16.50
15.82
9.98
ddr8uck5s5kp3
begin ctxsys.drvdml.com_sync_i...
14,618.81
213,980
0.07
8.81
8.39
27.79
02yb6k216ntqf
begin ctxsys.syncrn(:idxownid,...
Full Text of above top sql:
ddr8uck5s5kp3
begin ctxsys.drvdml.com_sync_index(:idxname, :idxmem, :partname);
end
02yb6k216ntqf
begin ctxsys.syncrn(:idxownid, :idxoname, :idxid, :ixpid, :rtabnm, :flg); end;
Now if I do the full index optimization more often and not just once at night 3 PM, will that mean, the load on DB due to sync on commit will decrease? If yes how often should I optimized and doesn't the optimization itself lead to some load? Can someone suggest?
Thanks,
OrauserNYou can query the ctx_parameters view to see what your default and maximum memory values are:
SCOTT@orcl12c> COLUMN bytes FORMAT 9,999,999,999
SCOTT@orcl12c> COLUMN megabytes FORMAT 9,999,999,999
SCOTT@orcl12c> SELECT par_name AS parameter,
2 TO_NUMBER (par_value) AS bytes,
3 par_value / 1048576 AS megabytes
4 FROM ctx_parameters
5 WHERE par_name IN ('DEFAULT_INDEX_MEMORY', 'MAX_INDEX_MEMORY')
6 ORDER BY par_name
7 /
PARAMETER BYTES MEGABYTES
DEFAULT_INDEX_MEMORY 67,108,864 64
MAX_INDEX_MEMORY 1,073,741,824 1,024
2 rows selected.
You can set the memory value in your index parameters:
SCOTT@orcl12c> CREATE INDEX EMPLOYEE_IDX01
2 ON EMPLOYEES (EMP_NAME)
3 INDEXTYPE IS CTXSYS.CONTEXT
4 PARAMETERS ('SYNC (ON COMMIT) MEMORY 1024M')
5 /
Index created.
You can also modify the default and maximum values using CTX_ADM.SET_PARAMETER:
http://docs.oracle.com/cd/E11882_01/text.112/e24436/cadmpkg.htm#CCREF2096
The following contains general guidelines for what to set the max_index_memory parameter and others to:
http://docs.oracle.com/cd/E11882_01/text.112/e24435/aoptim.htm#CCAPP9274 -
How can I use sql loader to load a text file into a table
Hi, I need to load a text file that has records on lines tab delimited into a table. How would I be able to use the sql loader to do this? I am using korn shell to do this. I am very new at this...so any kind of helpful examples or documentation would be very appreciated. I would love to see some examples to help me understand if possible. I need help! Thanks alot!
You should check out the documentation on SQL*Loader in the online Oracle document titled Utilities. Here's a link to the 9iR2 version of it: http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/server.920/a96652/part2.htm#436160
Hope this helps. -
I've been asked to draw people's attention to Support Note 1386945.1
This covers problems that some users have experienced when upgrading existing Oracle Text installations to version 11.2.0.3.
The most common problem is getting an error:
ORA-07445: exception encountered: core dump [druhfind()+370]
You could also see
ORA-20000: Oracle Text error:
DRG-50857: oracle error in textindexmethods.ODCIIndexInsert
ORA-20000: Oracle Text error:
DRG-10607: index meta data is not ready yet for queuing DML
DRG-50857: oracle error in drdmlv
ORA-01426: numeric overflow
ORA-30576: ConText Option dictionary loading error
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 752
or
DRG-10607: index meta data is not ready yet for queuing DML
DRG-50857: oracle error in drdmlv
ORA-01426: numeric overflow
There may also be issues with IPV6 URLs and the URL data store.
The recommended fixes are:
Apply generic Patch 13258936 to fix the meta data corruption.
Apply Patch 12960302 to fix the ORA-30576, DRG-10607 and ORA-1426 errors.
Apply generic Patch 13366268 to fix the core dump in function druhfind() from 'create index' statement and the import problem. This patch contains also the fix for Bug 13352423.
Apply Patch 12985184 to fix the IPv6 url problem.
RogerHi;
Is Oracle Database 11g Release 2 (11.2.0.3.0) available for IBM AIX on POWER Systems (64-bit),Yes
Or do we need to upgrade 11.2.0.1 to 11.2.0.3.0.Please clarifyYou dont need upgrade, download patchset from metalink and start your process.
Also see:
Oracle Database on Unix AIX,HP-UX,Linux,Mac OS X,Solaris,Tru64 Unix Operating Systems Installation and Configuration Requirements Quick Reference (8.0.5 to 11.2) [ID 169706.1]
PS:Please dont forget to change thread status to answered if it possible when u belive your thread has been answered, it pretend to lose time of other forums user while they are searching open question which is not answered,thanks for understanding
Regard
Helios -
Error in accessing Knowledge base + oracle text 11g
Hi All,
I am using oracle text 11g.
I had installed a knowledge base and it was working fine(bcos i was able to generate themes and gists), i wanted to load a 'default' thesaurus, i created a 'default' thesaurus and from cmd prompt i gave 'ctxload' command, then it asked for user(i logged in as ctxsys credentials), name (thes default),file( thes path), but after this i got below error
connecting...
DRG-11510: encountered unrecoverable error on line1
ORA-00931: missing identifier
disconnected
unknowingly after this i gave 'ctxkbtc' command and proceeded further and i cancelled this action by closing cmd prompt.
after this, now i am not able to create themes or gists, i am getting the below error while creating themes.
Error report:
ORA-20000: Oracle Text error:
DRG-11422: linguistic initialization failed
DRG-00100: internal error, arguments : [52100],[drxa.c],[357],[gxtopen],[1]
DRG-00100: internal error, arguments : [52100],[gxt.c],[186],[gxl err],[7]
DRG-11432: file error while accessing knowledge base
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.CTX_DOC", line 210
ORA-06512: at line 2
20000. 00000 - "%s"
*Cause: The stored procedure 'raise_application_error'
was called which causes this error to be generated.
*Action: Correct the problem as described in the error message or contact
the application administrator or DBA for more information.
please let me know the solution
Thanks in advance.Hi,
You can try running ctxkbtc once more with revert option.
-revert
Reverts the extended knowledge base to the default knowledge base provided by
Oracle Text.
Make sure to set NLS_LANG variable before running it
If you have already solved this issue, if possible share the solution to this forum too. -
Problem full-text in blob column index created using Oracle Text
Hi,
I'm running Oracle Database 10g 10.2 on solaris
I configure Oracle text if i look for in a varchar2 column is ok, but with blob column doesn't works the search.
I have a table with a blob column which contains document. I load document with Oracle UCM (stellent)
My index scripts is:
CREATE INDEX ORAUCM.FT_IDCCOLL1 ON ORAUCM.IDCCOLL1
(DDOCFULLTEXT)
INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS('DATASTORE CTXSYS.DEFAULT_DATASTORE FILTER CTXSYS.AUTO_FILTER FORMAT COLUMN DFULLTEXTFORMAT CHARSET
COLUMN DFULLTEXTCHARSET LEXER OCS_IDCCOLL1_LEXER SYNC (ON COMMIT)')
NOPARALLEL;
And my select retunm 0 rows although it will be many documents:
SELECT IdcColl2.dID, dDocName, dDocTitle, dDocType, dRevisionID, dSecurityGroup, dDocAuthor,
dDocAccount, dRevLabel, dFormat, dOriginalName, dExtension, dWebExtension, dInDate, dOutDate,
dPublishType, dRendition1, dRendition2, VaultFileSize, WebFileSize, URL, dFullTextFormat,
dFullTextCharset, DocMeta.*
FROM IdcColl1, DocMeta
WHERE IdcColl1.dID=DocMeta.dID AND (CONTAINS(dDocFullText,'SUBIR') > 0 )
ORDER BY dInDate Desc
Thanks in advance.Thank you for your answer.
I response your question:
- yes DDOCFULLTEXT is a BLOB column.
- The document that word, excels, whatever. We load the document with UCM (universal Content Management)
because i need full-test search form UCM tool.
- Yes 'subir' containts in the word document.
- select * from CTX_USER_INDEX_ERRORS ;
No rows returned.
- SELECT TOKEN_TEXT FROM DR$FT_IDCCOLL1$I
No rows returned.
- I tried create symplifying index and doen't work.
I tried create table and index context on oracle 10.2.0.3 (test database)and works ok.
I compared both context (test database and ucm database) and i saw a difference:
In ucm database there are these preferences "analyze text"
BEGIN ctx_ddl.create_preference('ORAUCM.', 'WORLD_LEXER'); end;
BEGIN ctx_ddl.create_preference('ORAUCM.', 'DETAIL_DATASTORE'); end;
I don't know if is important diference or no.
Please if you need more information, tell me.
Thanks for your time. -
Problem with blob column index created using Oracle Text.
Hi,
I'm running Oracle Database 10g 10.2.0.1.0 standard edition one, on windows server 2003 R2 x64.
I have a table with a blob column which contains pdf document.
Then, I create an index using the following script so that I can do fulltext search using Oracle Text.
CREATE INDEX DMCS.T_DMCS_FILE_DF_FILE_IDX ON DMCS.T_DMCS_FILE
(DF_FILE)
INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS('DATASTORE CTXSYS.DEFAULT_DATASTORE');
However, the index is not searchable and I check the following tables created by database for my index and found them to be empty as well !!
DR$T_DMCS_FILE_DF_FILE_IDX$I
DR$T_DMCS_FILE_DF_FILE_IDX$K
DR$T_DMCS_FILE_DF_FILE_IDX$N
DR$T_DMCS_FILE_DF_FILE_IDX$R
I wonder what's wrong with it.
My user has been granted the ctx_app role and I have other tables that store plain text which I use Oracle Text are fine. I even output the blob column and save as pdf file and they are fine.
However the database seems like not indexing my blob column although the index can be created without error.
Please advise.
Really appreciate anyone who can help.
Thank you.The situation is I have already loaded a few pdf document into the table's blob column.
After I create the Oracle text index on this blob column, I find the system generated index tables listed in my earlier posting are empty, except for the 4th table.
Normally we'll see words inside the table where those are the words indexed by oracle text on my document.
As a result, no matter how i search for the index using select statement with contains operator, it will not give me any result.
I feel weird why the blob is not indexed. The content of the blob are actually valid because I tested this by export the content back to pdf and I can still view and search within the pdf.
Regards,
Jap. -
Non text filters in Oracle Text 9.2 (W2K)
It appears that the INSO filters do not work very well - certainly not out of the box. Other than the plain text files I have not been able to index any other documents. Judging by the amount of traffic on this I don't hold up much hope, since I am getting the ubiquitous(undebuggable!!):
ORA-20000: Oracle Text error:
DRG-11207: user filter command exited with status 1
ORA-06512: at "CTXSYS.DRUE", line 157
ORA-06512: at "CTXSYS.CTX_DOC", line 609
ORA-06512: at line 3
This is a show stopper for us since we have no control of the documents and really require close to 100% coverage of at least the supported types -- what are the experiences of folks here in general -- should we abandon this now?
-- simon (mailto:[email protected])Simon -
do you know what files are causing the errors?
the INSO filter tends to give this error if it tries to process XML files. In the current version, you will need to identify XML files in some other manner (eg by file extension when loading) and use a FORMAT column to mark these rows as TEXT - which will cause the filter to ignore them and they will be indexed as plain text.
In a future version the INSO filter will automatically recognize and skip XML files, which should solve the problem.
- Roger -
Oracle Text And Oracle Ultra search
Hi all,
I have a problem. I have some files in the server file system e.g C:/docs. I want to search these MS Office word files in order to see if they contain a word. I tried oracle ultra search but when i put File data source it provides a form file:/// and when i put C:/docs it gives me file://localhost/C:/docs. Can i configure Oracle ultra search to search into the server file system?Where is the directory that oracle ultra search searches a file?
How can index and search the files in the file systems exept oracle ultra search? Can Oracle Text do my job?
Sorry to bother and thank you in advance for your help
Antonis.Hi,
Searching a word in a document (MS Word) can definitely be done using Oracle Text.
But, you other requirements can make things a bit complicated.
Oracle Text have something called file_datastore, where you need to mention the file_path/s and individual file names too.
Once you mention them, i.e. path and file names, oracle text can read the file , index them and you can query using simple queries.
If the number of files are huge, entering all the file names can be difficult. In that case you can give the following a try.
-- You can use a perl script to read the file name in a directory, put it into a file in a particular format (1 file name per line) and then load that text file into a table using ctxloader.
You can go through the FILE_DATASTORE and CTXLOADER examples from oracle text reference document. -
Oracle Text performance -- failed attempts
We are trying to implement a simple search of text data stored in a heavily used table (inserts/updates). There are 3 columns to index --
Headline (varchar2(255))
Subheadline (varchar2(255))
Teaser (varchar2(4000))
The first attempt to implement Oracle text w/ CATSEARCH
begin
ctx_ddl.create_index_set('cms_iset');
ctx_ddl.add_index('cms_iset','poolid_cp, mediaid_cp'); /* sub-index A */
end;
---- We knew we were going to filter on poolid_cp and mediaid_cp ---
CREATE INDEX cms_headlineidx ON con_properties (headline)
INDEXTYPE IS ctxsys.CTXCAT
PARAMETERS ('index set cms_iset');
CREATE INDEX cms_subheadlineidx ON con_properties (subheadline)
INDEXTYPE IS ctxsys.CTXCAT
PARAMETERS ('index set cms_iset');
CREATE INDEX cms_teaseridx ON con_properties (teaser)
INDEXTYPE IS ctxsys.CTXCAT
PARAMETERS ('index set cms_iset');
*********THE RESULTS*************
Our application server would spin up threads that would appear to be hanging. The load on the DB servers (RAC) were higher than normal. This implementation would have saved on having to do resync's manually.
The next attempt was implementing w/ CONTEXT:
alter table con_properties add (dummy varchar2(1));
begin
ctx_ddl.create_preference('con_propsearch', 'MULTI_COLUMN_DATASTORE');
ctx_ddl.set_attribute('con_propsearch', 'columns', 'headline,subheadline,teaser');
end;
CREATE INDEX con_properties_searchidx
ON con_properties(dummy)
INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('datastore CTXSYS.con_propsearch')
Records getting put into the ctx_user_pending table a few hundred per hour.
********THE RESULTS*************
Same issue with the application servers spinning off threads that seem to be hung. Spikey load on the DB servers (RAC).
NOTE: In both implementations, running search querys ran OK. However, dropping the text index in BOTH cases caused the application servers to behave normally.
Can anyone tell me what's going on internally with Oracle TEXT when a table is heavily inserted and updated? What is going on in the background. Is there some sort of lock that the app servers are waiting on? I know there is "overhead" with inserts on a normal b-tree index. Is it "exponential" with Oracle Text?
Thank you!When documents in the base table are inserted, updated, or deleted, their ROWIDs are held in a DML queue until you synchronize the index. You can view this queue with the CTX_USER_PENDING view. Apparently, you are not synchronizing your context index, so the queue is building infinitely. You need to establish some method of synchronizing your index. You can use parameters('sync(on commit)') in your index creation or create an after insert or update statement level trigger, not row trigger, that uses dbms_job.submit to schedule ctx_ddl.sync_index to synchronize the index upon commit of the dml or you can manually run ctx_ddl.sync_index periodically or schedule it or you can alter and rebuild your index periodically or you can drop and recreate it periodically. Which method you choose depends on how current the information that you query needs to be. If your data needs to be current up to the moment, the you should sync on commit. Otherwise it may be better to do it in periodic batches.
-
Oracle Text Index on Materialized View
Hello,
I have designed a search engine for an internet application.
We have different tables for our main business objects, the search is based on the content of all these dependent entities (Product, Company etc...)
So I have created a materialized view to embody this aggregation.
Then I have created a Multi column datastore index on top of the snapshot.
The search engine has to be refreshed automatically 3 times a day, and manually anytime.
This is achieved by executing a complete refresh on the view and rebuild the index, programmatically via Toplink (SqlCall).
The MV refresh looks like this :
alter index usr_batiprod.fullTextMulticolIdx rebuild
and the index rebuild:
begin
DBMS_MVIEW.REFRESH('FT_TEST','C');
end;
Everything was fine until now, we have had lots of tuning on the index side, the refresh process was working fine...
We have let the users access the engine since Thursday (the index had been created on the production environment a fews weeks ago) and since yesterday (or maybe before) we have been experiencing data incoherency on the index...
I've tracked down the pb to the Fulltext Search's refresh process (manual and automatic share the same code) that was crashing on the Materialized view refresh :
java.sql.SQLException: ORA-20000: Oracle Text error:
DRG-50610: internal error: drexdsync
DRG-50857: oracle error in drekrtd (lob erase)
ORA-00060: deadlock detected while waiting for resource
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 794
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 851
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 832
ORA-06512: at line 2
Again, we had tested the functionality thoroughly and never experienced such behaviour before... even while refreshing the materialized view and the index 3 times (or more) a day..
Once I dropped the Oracle Text Index, I was able to refresh the MV again..
so it looks like the index was in some incoherent state and was holding a lock on the materialized view...
Maybe my Index refresh call is wrong, and a stronger load on the functionality leads quickly to this pb, I dont know..
I had always been a bit doubtful towards my index rebuild call, so Im thinking about using a more complete call :
alter index usr_batiprod.fullTextMulticolIdx rebuild parameters ('sync')
is it enough, or do I have to switch to a 'Oracle Text' specific call ?
Is there another possible reason for the MV lock ?
Thank you for your support
Best Regards
Olivier CuzacqMVs are constructed in different ways and have lots of different uses.
Why not just use MV as temp table for OT (Oracle Text) index?
Refresh MV OT_TEMP.
Delete all not matching rows from OT.
Insert all missing missing rows from OT_TEMP to OT.
sync OT index (online).
Query table OT. -
Hi,
I created an oracle text index on 10G database on a fairly large table (59 Mil recs) but when i go to Analyze it, i get the ora-29864 error message 'analyzing domain indexes marked LOADING/FAILED not supported'. The status of the index is valid. The index was created well over 24 hours ago. is it perhaps because the index is still loading?
Has anyone run across this problem?
Thanks"ORA-29864: analyzing domain indexes marked LOADING/FAILED not supported
Cause: Tried to analyze a domain index which was marked as LOADING or FAILED.
Action: If the index was marked LOADING, wait till it is marked valid before retrying the analyze. If index was marked FAILED, drop it OR rebuild it and retry the analyze."
Maybe you are looking for
-
i cant download apps music etc.when i try to download, a box comes up saying your apple id has been disabled. how do i undisable pls?
-
I have a friend that I use to be able to imessage with. We havent talked in a long time. Now when I send message from all my devices it will not send. Did he block me? Or is there another reason it wont send.
-
Plugging in new iPod to filled iTunes?
i'm about to recieve my replacement ipod, and i'm hoping that all it will take to fill the new ipod back up with all my files is the simple connection to the computer/having iTunes running as normal. i want to make sure that this will not delete my i
-
How do I import pdf(lecture slides) into onenote?
How do I import pdf(lecture slides) into onenote? cant figure out how to do it, saw a windows youtube video and you go into the pdf and click print, than print to onenote but there is no option on mca any tips/ways to get around this? cheers also the
-
Hello! Created a folio and shared it with people who have downloaded the Adobe viewer on their iPad. They log into the viewer with their Adobe ID, but the folio that I have shared does not come up. What am I doing wrong? How will the folio appears wi