RedGate loading oracle tables metadata fails - oracle

I’m using Redgate Data Compare for Oracle 5. I’ve (successfully) created Source and Target connections (both Oracle 11g), defined schema names on both side, then switched to "Tables & Views" tab. There was Initializing process popped-up, like connecting to db, populating metadata from oracle tables etc. and get list of tables from both connections. Later, I switched back to “main” screen "Data Sources" and changed one of the connections to another database (Oracle 12c). This time "Tables and Views" initialization failed with bunch of ORA errors.
ORA-19202: Error occurred in XML processing ORA-29913: error in
executing ODCIEXTTABLEOPEN callout ORA-29400: data cartridge
error KUP-04040: file PSImetalsParameters.csv in TEST not
found ORA-06512: at "SYS.DBMS_XMLGEN", line 288 ORA-06512:
at "SYS.DBMS_XMLGEN", line 237 ORA-06512: at "SYS.DBMS_XMLGEN",
line 280 ORA-06512: at line 1
(I have doubt that it may be some privileges issue for that user/schema. But not sure which Oracle tables or schemas RedGate needs to access.)
Any help on it?

Related

How to refresh Materialized View using DB link in Oracle

I have 3 schemas in Oracle. There's a Materialized View in the 3rd schema which I need to refresh from the 1st schema.
Below is the elaboration of the requirement:
uv1 (1st schema) --> db link to nwdb2 (2nd schema) --> nwdb3 (3rd schema) --> emp_de_mv (MV)
I need to refresh the emp_de_mv from uv1.
I'm already executing a SELECTstatement on MV from uv1 as follows, which is working successfully:
SELECT * FROM nwdb3.emp_de_mv#nwdb2;
I tried refreshing the MV from uv1 as follows as suggested here.
EXEC DBMS_MVIEW.refresh('nwdb3.emp_de_mv#nwdb2', 'C');
But it's giving me following error:
Error starting at line : 25 in command -
EXEC DBMS_MVIEW.refresh('nwdb3.emp_de_mv#nwdb2', 'C')
Error report -
ORA-20000: ORA-00979: illegal reference to remote database
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2809
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 3025
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2994
ORA-06512: at line 1
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.
Can anyone help me with above requirement?
Please note, I won't be able to create new DB link in uv1 due to security reasons.
ORA-20000: ORA-00979: illegal reference to remote database
You get this error message because, as the documentation for refresh() states:
"These materialized views can be located in different schemas and have different master tables or master materialized views. However, all of the listed materialized views must be in your local database."
The solution is to execute the refresh on the remote database, by invoking DBMS_MVIEW across the database link:
EXEC DBMS_MVIEW.refresh#nwdb2('nwdb3.emp_de_mv', 'C');
how am I able to access nwdb3 from nwdb2 directly, without DB link & why can't I access nwdb2 directly from uv1, without DB link?
It's your environment so I don't - can't - know the architecture. You describe nwdb2 as a schema but also describe it as a database link. I'm guessing you have a database link called nwdb2 which connects to a schema also called nwdb2 that has privileges on another schema nwdb3 in the remote database server. On the remote server nwdb2 can reference objects in nwdb3 schema without a database link because those schemas are local to each other. But nwdb1 must use a database link because it is not local to either schema.

Getting the writable operation error while using oracle cdc

I am getting the following error while connecting through oracle cdc client and my origin database is read only database but the error is database required for writable operation. please help
Caused by: java.sql.SQLException: ORA-01300: writable database required for specified LogMiner options
ORA-06512: at "SYS.DBMS_LOGMNR", line 58
ORA-06512: at line 1
This is a limitation of LogMiner itself - the LogMiner dictionary requires write access to the database for all modes except Extracting the LogMiner Dictionary to a Flat File, which does not guarantee transactional consistency. Oracle recommends using the online catalog or extracting the dictionary from redo log files, which are the options that Data Collector offers.
See the Oracle LogMiner documentation.

AcquireConnection method call to the connection manager Oracle Connector failed

I have setup the connection manager from SSIS to Oracle as:
In the Oracle source:
I can preview the data successfully:
However, upon attempting to execute the packge, the erorr appears as:
SSIS package "C:\Users\kakah\Documents\Visual Studio 2015\Projects\TestExcel\TestExcel\INV_MTL_SYSTEM_ITEMS_TL.dtsx" starting.
Information: 0x4004300A at Data Flow Task, SSIS.Pipeline: Validation phase is beginning.
Warning: 0x802092A7 at Data Flow Task, OLE DB Destination [17]: Truncation may occur due to inserting data from data flow column "DESCRIPTION" with a length of 600 to database column "DESCRIPTION" with a length of 150.
Warning: 0x802092A7 at Data Flow Task, OLE DB Destination [17]: Truncation may occur due to inserting data from data flow column "LONG_DESCRIPTION" with a length of 2000 to database column "LONG_DESCRIPTION" with a length of 150.
Error: 0x2C0 at INV_MTL_SYSTEM_ITEMS_TL: OCI error encountered. ORA-12154: TNS:could not resolve the connect identifier specified
Error: 0x20F at Data Flow Task, Oracle Source [62]: The AcquireConnection method call to the connection manager Oracle Connector failed with error code 0x80004005. There may be error messages posted before this with more information on why the AcquireConnection method call failed.
Error: 0xC0047017 at Data Flow Task, SSIS.Pipeline: Oracle Source failed validation and returned error code 0x80004005.
Error: 0xC004700C at Data Flow Task, SSIS.Pipeline: One or more component failed validation.
Error: 0xC0024107 at Data Flow Task: There were errors during task validation.
SSIS package "C:\Users\kakah\Documents\Visual Studio 2015\Projects\TestExcel\TestExcel\INV_MTL_SYSTEM_ITEMS_TL.dtsx" finished: Failure.
What could I be missing? How can this be resolved?
If you right click on the project and go to properties --> Configuration Properties --> Debugging, did you make sure Run64BitRuntime is False? Sometimes that gets toggles to True and will break it.
What exactly do you mean by executing the package? Execute it from BIDS/SSDT or SQL Server agent?
Are there any configuration files/dynamic configurations that you are using? From what it appears, the tnsnames.ora file that your connection manager is using at run time has bad connection information.
SSDT 2017 connecting to Oracle 9i.
Issue : on my windows 10 laptop I had installed 10G 32 Bit and 11G 64 bit client installed
Resolution : Remove all the clients and install only one version of Client 11G both 32 and 64 bit client and SSIS worked like a charm

TOAD Scheme browser error when executing a package

I am getting an error
ORA-01086: Savepoint 'somesavepoint' never established
ORA-06512: at MyPackage, line 500
ORA-01002: fetch out of sequence
ORA-06512: at MyPackage, line 650
ORA-06512: at line2
Only happening when I execute the package from the schema browser of TOAD.
Doesn't happen when I execute it from editor
EXEC MyPackage.Procedure
Is anyone aware of any problems related to this? How can this be solved?
ORA-01086 occurs when you commit and then ask to rollback to your savepoint. So when you use TOAD schema browser, there must have been an open bug at that moment to apply a commit or perform a DDL within the session. If you would have had two different TOAD sessions then this should not happen.
Try to have two different sessions
One with Schema Browser
Another with normal Editor
This should be resolving the issue. Else check for quest website for open bugs on your TOAD version.

11g XE: could not find the given license file

I'm trying to create a simple full-text index like this:
exec ctx_ddl.create_preference('my_own_lexer', 'AUTO_LEXER');
create index myidx ON tbl(name)
INDEXTYPE IS ctxsys.context PARAMETERS ('LEXER my_own_lexer')
Got error:
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-20000: Oracle Text error:
DRG-10502: index IDX does not exist
DRG-00100: internal error, arguments : [50611],[drli.c],[2743],[License Error:
could not find the given license file:
/u01/app/oracle/product/11.2.0/xe/ctx/data/inxight/lang/license.dat],[]
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 366
Using BASIC_LEXER instead of AUTO_LEXER - works without errors
centOS, Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Beta
thanx!
Oracle XE 11gR2 is a beta product. But Express Edition is a restricted product, lacking some of the functionality included in the bigger product. So this may be a bug or a feature by design. The licensing documentation doesn't explicitly mention AUTO_LEXER, which we might expect if Oracle had deliberately excluded it, so "bug" is quite likely.
The best thing to do is raise this question on the OTN forum for the product. Members of the XE team read and respond to user feedback there.

Resources