Link from Oracle DB server to Oracle DB server
Hi,
I need some help how to link oracle db server A to Oracle db server B. It is so difficult to set it up. I kept getting error 'Could not resolve the connect identified...'
when I execute this query statement that links to B server: select COUNT(*) from [email protected]
I am currently on server A and here is the information server of server B.
Server B
DB Name: 'SafeStaging'
Domain: 'us.mycomp.com'
global Name: true
Name of db link: SAFESTAGING.US.MYCOMP.COM
From the query screen, I used the query syntax to establish the link as following:
create database link SAFESTAGING.US.MYCOMP.COM
connect to "login" identified by "password"
using 'service_staging'
In the TNSNAMES.ORA file on the server desktop, I also add these lines
service_staging =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ###.###.#.##)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =SAFESTAGING.US.MYCOMP.COM)
select COUNT(*) from [email protected] --> get error: 'Could not resolve the connect identified...'
Thanks for the reply. But, the issue is not resolved. I still get error: 'Could not resolve the connect identifier specified'
The TNSNAMES.ORA contains this information
QSAFESTG.US.MyComp.COM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ###.##.###.##)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = qsafestg)
Oracle uses this information to connect this db server is fine from the UI. But, the issue when I create the database link.
create database link QSAFESTG.US.MyComp.COM connect to "login" identified by "password" using 'qsafestg'
SELECT COUNT(*)
FROM [email protected]
-----> I got an error 'could not resolve the connect identifier specifier'
on DOS command - tnsping qsafestg --> get error: 'Failed to resolve name'. --why it failed?
Then, I tried creating another link
create database link qsafestg connect to "login" identified by "password" using 'qsafestg'
SELECT COUNT(*)
FROM table1@qsafestg
-----> I got an error 'could not resolve the connect identifier specifier'
ON DOS Command: tnsping QSAFESTG.US.MyComp.COM --> Return: OK. (100ms) ?
Why do I keep getting this error: could not resolve the connect identifier specifier
Similar Messages
-
Hello, I am running the Oracle database 11.2.0.2 and using a database link accessing a sql server 2008 R1. The link is working fine, but a table has columns that are greater than 30 chars and Oracle db gateway cannot access this. Does anyone know of a fix or workaround?
Thanks
Jennifer L.As this is an Oracle database limitation you have to shrink the column name by for example creating a view on the SQL Server side defining aliases for each larger column name and then select from the view rather then from the table directly.
See also MOS (=My Oracle Support) note: Replication From Sql Server To Oracle Database Failes With "Ora-00972: Identifier Is Too Long" (Doc ID 1322826.1) -
Link from where I can download Oracle Ultra Search for Oracle10g
Hi All,
I need to install oracle ultra search on Oracle10g database. If anyone know the link from where I can download it, then kindly share.
Thanks
SunnyHi,
Don't know If I am asking the right question or not but isn't this doc. talks about the configuration part of the Oracle Ultra Search which needs to be
done once the Installation part is done.
I have oracle 10g database installed on win2k3 machine and now I wish to install the Oracle Ultra Search on it. Is there any patch/update available for
installing Oracle Ultra Search. As per the documentation, it can installed using Oracle Universal Installer but I don't have the Oracle UI.
Beside this, I was following the doc. on the link provided by you; I got an error *" Role WKUSER doesn't exist"* while executing the below mentioned
query:
GRANT CONNECT, RESOURCE, WKUSER TO <username>;
Error: User WKSYS doesn't exists.
ALTER USER WKSYS IDENTIFIED BY <password>;
Are these errros because of Oracle Ultra Search not being installed on my database.
Kindly help.
Thanks
Sunny
Edited by: sunny@newbie on Jun 8, 2009 2:53 PM -
Need help setting up DB Link from my Oracle 11g XE to SQL Server.
Hi,
I'm trying to create a DB Link from my Oracle 11g Express Edition in a Windows XP machine to an SQL Server. Here are the steps I've done so far.
1. Created and setup an ODBC Connection for the SQL Server DB. Named it SQLSERVER. Windows Authenticated.
2. Modified listener.ora. See below.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
(SID_DESC =
(SID_NAME = SQLSERVER)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = hsodbc)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
DEFAULT_SERVICE_LISTENER = (XE)3. Modified tnsnames.ora. See below.
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
SQLSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT=1521))
(CONNECT_DATA =
(SID = SQLSERVER)
(HS = OK)
)4. Copied C:\oraclexe\app\oracle\product\11.2.0\server\hs\admin\initdg4odbc.ora to C:\oraclexe\app\oracle\product\11.2.0\server\hs\admin\initSQLSERVER.ora and modified it. See below.
# This is a sample agent init file that contains the HS parameters that are
# needed for the Database Gateway for ODBC
# HS init parameters
HS_FDS_CONNECT_INFO = SQLSERVER
HS_FDS_TRACE_LEVEL = off
# Environment variables required for the non-Oracle system
#set <envvar>=<value>5. Restarted listener.
C:\>lsnrctl stop
LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Production on 18-SEP-2012 11:33
:51
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
The command completed successfully
C:\>lsnrctl start
LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Production on 18-SEP-2012 11:33
:54
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Starting tnslsnr: please wait...
TNSLSNR for 32-bit Windows: Version 11.2.0.2.0 - Production
System parameter file is C:\oraclexe\app\oracle\product\11.2.0\server\network\ad
min\listener.ora
Log messages written to C:\oraclexe\app\oracle\diag\tnslsnr\PHAILORTD000012\list
ener\alert\log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for 32-bit Windows: Version 11.2.0.2.0 - Produ
ction
Start Date 18-SEP-2012 11:33:57
Uptime 0 days 0 hr. 0 min. 3 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File C:\oraclexe\app\oracle\product\11.2.0\server\network\a
dmin\listener.ora
Listener Log File C:\oraclexe\app\oracle\diag\tnslsnr\PHAILORTD000012\li
stener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "SQLSERVER" has 1 instance(s).
Instance "SQLSERVER", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully6. Created database link using the following command.
create database link sqlserver using 'SQLSERVER';7. Test using
select * from "dbo.mytable"@sqlserver;
ORA-28545: error diagnosed by Net8 when connecting to an agent
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: preceding 2 lines from SQLSERVER
select * from dbo.mytable@sqlserver;
ORA-28545: error diagnosed by Net8 when connecting to an agent
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: preceding 2 lines from SQLSERVER
select * from mytable@sqlserver;
ORA-28545: error diagnosed by Net8 when connecting to an agent
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: preceding 2 lines from SQLSERVERI followed the steps provided in this link but not sure where I went wrong. Can someone help me.
http://www.dba-oracle.com/t_heterogeneous_database_connections_sql_server.htm
Thanks,
AllenHere's more information on the machines.
Machine where the Oracle Database 11g Express Edition: IP Address is 10.162.128.67
Machine where the SQL Server database: IP Address is 142.120.51.30.
I've modified the tnsnames.ora to the following:
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.162.128.67)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
SQLSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 142.120.51.30)(PORT=1433))
(CONNECT_DATA =
(SID = SQLSERVER)
(HS = OK)
)But now I'm getting the following error:
C:\>tnsping sqlserver
TNS Ping Utility for 32-bit Windows: Version 11.2.0.2.0 - Production on 18-SEP-2
012 14:52:59
Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 142.120.51.30)(PORT=1434))) (CONNECT_DATA = (SID = SQLSERVER)) (HS = OK)
TNS-12541: TNS:no listener
C:\>Regards,
Allen -
Creation of database link from oracle to sql server 2000
Hi
I need to create a database link from oracle to sql server 2000.Assuming your Oracle database is running on Windows, you can set up a database link using ODBC using Heterogeneous Services and Generic Connectivity, but there are some functional limitations (i.e. no two-phase commits). If you can live with those limitations but aren't on Windows, you can generally purchase an ODBC driver for your operating system that will connect to SQL Server through someone like DataDirect and still use Generic Connectivity. If you cannot live with those limitations, you can purchase one of Oracle's Transparent Gateway products (though this can get somewhat pricey).
What version of Oracle are you on?
What operating system(s) are you using?
What are you going to use the database link for?
Justin -
Creating Database Link from Oracle to SQL Server
I am trying to create a database link from Oracle to SQL Server, and the documentation is about as clear as mud to me. Can anyone send me clear instructions on exactly what I need to do? What needs to be in tnsnames.ora and listener.ora files? Is there anything other than those two files that needs to be set up? Do I set up an ODBC connection? Anything else? I want to execute queries against a SQL Server database and load data into Oracle database.
Thanks so much,
SusanThese are the instructions from an old document I created. The steps are same for SQL Server and Sybase. Hope it helps.
The 9i Transparent Gateway Software is in Oracle Software CD -> oracle9i database -> Custom -> Oracle Transparent Gateways
The gateway can be installed on the same machine as the Oracle database or
on the Sybase server or on a third machine as a stand-alone.
We have installed the gateway software in one of oracle database
servers in a separate oracle home.
These are the steps involved in configuring a gateway to a Sybase database
1. Install Sybase client and Gateway software on the Gateway Server
2. Configure <initsidfile> in the Gateway Server's <gatewayhome>
/u00/app/oracle/product/9.2.0/tg4sybs/admin/init<gatewaysid>.ora
Sybase server and database information is required for this step.
eg: HS_FDS_CONNECT_INFO=USTRUD01.uwd
3. Add an entry in listener.ora in <listnenerhome>
(/u00/app/oracle/product/9.0.1/network/admin/listener.ora) for the <gatewaysid>
4. Edit the tnsnames file (/u00/app/oracle/product/9.0.1/network/admin/tnsnames.ora)
to add an entry <tnsalias> for the <gatewaysid>
5. Create a database link to the Sybase database in the oracle database.
The steps for creating the database link are
a. create a login oracle_tgw in the sybase server
b. add the user to the sybase database with the necessary privilege on the tables
c. create the database link in the required oracle database using the command
"create public database link <dblinkname> connect to oracle_tgw identified by password using 'tnsalias'; "
6. Restart the gateway listener. -
How could I create a "Linked Server" link from SQL Server 2008R2 64-Bit to Oracle Database 11.2 64-Bit?
Let's say the SQL Server and Oracle Database are in the same Company Internet Network.
I have the code, but I do not know how to use it. Such as what is System DSN Name? Where could I get it. What does it look like?
Do I need to install any Oracle Client Software in order to link from SQL Server to Oracle? Or SQL Server has the built-in drivers installed already that I can directly create a Linked Server from SQL Server to Oracle?
I need to know details. Thanks.
USE master
go
EXEC sp_addlinkedserver
@server = '{Linked Server Name}'
,@srvproduct = '{System DSN Name}'
,@provider = 'MSDASQL'
,@datasrc = '{System DSN Name}'
EXEC sp_addlinkedsrvlogin
@rmtsrvname = '{Linked Server Name}'
,@useself = 'False'
,@locallogin = NULL
,@rmtuser = '{Oracle User Name}'
,@rmtpassword = '{Oracle User Password}'You need an OLE DB provider for Oracle. There is one that ships with Windows, but it only supports very old versions of Oracle. Oracle has an OLE DB provider that you can use. I don't know if it's part of Oracle Client or how it is bundled.
You should not use MSDASQL or any DSN.
Erland Sommarskog, SQL Server MVP, [email protected] -
How to create database link from oracle to sql server
Please help with how to create database link from oracle to sql server
Best regards,
VishalPlease help with how to create database link from oracle to sql server
Best regards,
Vishal
Hi Vishal,
I found a lof of information regarding how to create a database link from Oracle to SQL Server, please see:
https://www.google.co.in/?gws_rd=cr&ei=vd3XUvGFO8TgkAXqlYCADg#q=how+to+create+database+link+from+oracle+to+sql+server
We discuss SQL Server related issue in this forum. If you have any more question regarding Oracle, please post it in Oracle communities forum for better support.
Regards,
Elvis Long
TechNet Community Support -
Urgent:db link from oracle 10g to sql server 2000
Hi
I have a db link 10g from oracle to sql server 2000. This was created a couple of years ago. This is working.
I have now created another db link from same oracle server to the same sql server but it is not working.
But I am getting ORA-28500 and IM002 error
.Please advise.
I am unable to understand what is wrong because I have followed the hs odbc set up on this db link in the same way as I had done 2 yrs ago.
Thanks
ShailajaJust sorted the problem.
Basically I am using HSODBC to communicate from Oracle (on windows 2003 64 bit) to SQL Server.
To do this, I need to create a ODBC connection from Oracle to SQL Server.
HSODBC is a 32 bit application and hence we have to use the ODBC 32 bit driver when we create the ODBC connection.
When I created the ODBC connection from Oracle to SQL Server, I was using the ODBC 64 bit driver and hence the system was unable to find the data source name.
I have now created ODBC connection from Oracle to SQL Server using the ODBC 32 bit driver and everything works fine now.
No offence to anyone but as you all work using Oracle software , I was hoping a better response than some of the above responses. You can just say that you didnt understand the question or you dont know the reason why that happened.
I just listed how the problem was sorted so that any one in future having the same problem can benefit. -
Problem with using database link from oracle 7 to oracle 9i
Hi To Every One
I have two oracle database oracle 7.3.4.0.1 and oracle 9i 9.2.0.1.0.
and the tns alias to connect to oracle 9i database is oracle9i and tns
alias to oracle 7 database is oracle7.I have no problem in connect to
these database using these tns aliases from either database.The tns
alias for oracle 7 is available in tnsnames.ora file of oracle9i and
tns alias for oracle 9i is available in tnsnames.ora file of oracle 7.
So there is no connection problem from each other.Connection is
working fine for each other but the problem with database links is
like this
Problem:
when i create database link from oracle9i user or public database link
from oracle9i for oracle7 user like this
SQL ORACLE9I >CREATE DATABASE LINK ORACLE7 CONNECT TO <ORACLE7USER>
IDENTIFIED BY <PASSWORD> USING 'ORACLE7';
OR
SQL ORACLE9I >CREATE PUBLIC DATABASE LINK ORACLE7 CONNECT TO <ORACLE7USER>
IDENTIFIED BY <PASSWORD> USING 'ORACLE7';
The links get created sucessfully but when i write command like
SQL ORACLE9I> DESC <ORACLE7USER_NAME>.<ORACLE7USER_TABLENAME>@ORACLE7
I RECEIVE A ORACLE ERROR LIKE
ORA-12663 SERVICE REQUIRED BY CLIENT IS NOT AVAILABLE ON THE SERVER.
OR IF MY COMMAND IS LIKE
SQL ORACLE9I> SELECT <FEILD_NAME> FROM
<ORACLE7USER_NAME>.<ORACLE7USER_TABLENAME>@ORACLE7;
I RECEIVE AN ORACLE ERROR LIKE
ORA-01002 FETCH OUT OF SEQUENCE.
ORA-02063: preceding line from ORACLE7
BUT IF I CREATE A LINK FROM ORACLE7 USER FOR ORACLE9I USER
IT WORKS FINE.
PLZ HELP ME WHAT IS THE PROBLEM THAT THE LINK FOR ORACLE 7 IS NOT WORKING WHEN
IT IS BEING CREATED FROM ORACLE9I.
Thank u.Oracle 9.2.0 does not support connectivity to Oracle 7. The newest version that will support this is 9.0.1.
-
Database link from Oracle to MySQL
I tried and googled an tried again...but I can't get this to work. So if you can spare a moment, please help me out (or try to ;-) ).
Environment:
The Oracle Developer Days Virtual Box image, so that's 11gR2 EE on OEL. MySQL 5.1.51-community + mysql-connector-odbc-5.1.7-0.i386.rpm
1. Created a database called test in MySQL, with a user "oracle" and a password "123".
2. Created the file /home/oracle/.odbc.ini with as contents:
[ODBC Data Sources]
myodbc5 = MySQL ODBC 5.1.7 Driver DSN
[myodbc5]
DRIVER = /usr/lib/libmyodbc5.so
DESCRIPTION = MySQL ODBC 5.1.7 Driver DSN
SERVER = 127.0.0.1
PORT = 3306
USER = oracle
PASSWORD = 123
DATABASE = test
CHARSET = latin13. Created the file /home/oracle/app/oracle/product/11.2.0/dbhome_1/hs/admin/initmyodbc5.ora
# HS init parameters
HS_FDS_CONNECT_INFO=myodbc5
HS_FDS_TRACE_LEVEL=DEBUG
HS_FDS_SHAREABLE_NAME=/usr/lib/libmyodbc5.so
HS_LANGUAGE=AMERICAN.AMERICA.WE8ISO8859P15
HS_FDS_SUPPORT_STATISTICS=FALSE
# HS_NLS_NCHAR=AL32UTF8
# ODBC specific environment variables
set ODBCINI=/home/oracle/.odbc.ini
set ODBCINSTINI=/home/oracle/.odbc.ini
set LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/hs/lib:/usr/lib
# Environment variables required for the non-Oracle system
set HOME=/home/oracle4. Added to tnsnames.ora :
dg4odbc =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA = (SID=myodbc5))
(HS=OK)
)5. Added to listener.ora (and restarted it) :
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = myodbc5)
(PROGRAM = dg4odbc)
(ENVS ="LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/hs/lib:/usr/lib:/lib")
)6. Ran some tests:
a. isql dg4odbc -> Connected!
b. tnsping dg4odbc -> OK
c. lsnrctl status -> Service "myodbc5" has 1 instance(s). Instance "myodbc5", status UNKNOWN, has 1 handler(s) for this service...
d. in SQLPLUS (as system): create public database link mysql connect to "oracle" identified by "123" using 'dg4odbc';
e. select * from test@mysql ("test" is a simple table I created in the MySQL DB) returns
ERROR at line 1:
ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
ORA-02063: preceding line from MYSQL
When I look in the trace file (in $ORACLE_HOME/hs/log) I see at the bottom of the file:
HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/usr/lib/libmyodbc5.so"
Entered hgolofns at 2010/11/02-14:10:54
hoaerr:28500
Exiting hgolofns at 2010/11/02-14:10:54
Failed to load ODBC library symbol: /usr/lib/libmyodbc5.so(SQLAllocHandle)
Exiting hgolofn, rc=28500 at 2010/11/02-14:10:54
Exiting hgoinit, rc=28500 with error ptr FILE:hgoinit.c LINE:337 FUNCTION:hgoinit() ID:Loading ODBC aray of function ptrs
Entered hgoexit
HS Gateway: NULL connection context at exit
Exiting hgoexit, rc=0 with error ptr FILE:hgoexit.c LINE:108 FUNCTION:hgoexit() ID:Connection contextAfter Googling around I found out that all files are 32-bit (was on issue somewhere else)...and now I am stuck!
Any ideas, tips etc on how to proceed???
TIA
RoelThe ODBC Trace contains:
[ODBC][3331][1288788738.867244][__handles.c][459]
Exit:[SQL_SUCCESS]
Environment = 0x92b0d08
[ODBC][3331][1288788738.869179][SQLSetEnvAttr.c][189]
Entry:
Environment = 0x92b0d08
Attribute = SQL_ATTR_ODBC_VERSION
Value = 0x3
StrLen = -6
[ODBC][3331][1288788738.869204][SQLSetEnvAttr.c][356]
Exit:[SQL_SUCCESS]
[ODBC][3331][1288788738.879396][SQLAllocHandle.c][375]
Entry:
Handle Type = 2
Input Handle = 0x92b0d08
[ODBC][3331][1288788738.879422][SQLAllocHandle.c][493]
Exit:[SQL_SUCCESS]
Output Handle = 0x92c2940
[ODBC][3331][1288788738.879449][SQLSetConnectAttrW.c][332]
Entry:
Connection = 0x92c2940
Attribute = SQL_ATTR_AUTOCOMMIT
Value = (nil)
StrLen = -5
[ODBC][3331][1288788738.879467][SQLSetConnectAttrW.c][616]
Exit:[SQL_SUCCESS]
[ODBC][3331][1288788738.879694][SQLDriverConnectW.c][290]
Entry:
Connection = 0x92c2940
Window Hdl = (nil)
Str In = [DNdm;I=eoPDdm][length = 26]
Str Out = 0x92b1cf8
Str Out Max = 1024
Str Out Ptr = 0xbfe66270
Completion = 0
[ODBC][3331][1288788738.879718][SQLDriverConnectW.c][500]Error: IM002
[ODBC][3331][1288788738.879810][SQLGetDiagRecW.c][508]
Entry:
Connection = 0x92c2940
Rec Number = 1
SQLState = 0xbfe65f70
Native = 0xbfe65f90
Message Text = 0xbfe65d38her
Buffer Length = 510
Text Len Ptr = 0xbfe65fa8
[ODBC][3331][1288788738.879835][SQLGetDiagRecW.c][550]
Exit:[SQL_SUCCESS]
SQLState = IM002
Native = 0xbfe65f90 -> 0
Message Text = [[unixODBC][Driver Manager]Data source name not found, and no default driver specified]
[ODBC][3331][1288788738.879865][SQLGetDiagRecW.c][508]
Entry:
Connection = 0x92c2940
Rec Number = 2
SQLState = 0xbfe65f70
Native = 0xbfe65f90
Message Text = 0xbfe65d38
Buffer Length = 510
Text Len Ptr = 0xbfe65fa8
[ODBC][3331][1288788738.879882][SQLGetDiagRecW.c][550]
Exit:[SQL_NO_DATA]
[ODBC][3331][1288788738.879942][SQLDisconnect.c][208]
Entry:
Connection = 0x92c2940
[ODBC][3331][1288788738.879958][SQLDisconnect.c][237]Error: 08003
[ODBC][3331][1288788738.880005][SQLFreeHandle.c][286]
Entry:
Handle Type = 2
Input Handle = 0x92c2940
[ODBC][3331][1288788738.880023][SQLFreeHandle.c][337]
Exit:[SQL_SUCCESS]
[ODBC][3331][1288788738.903716][SQLFreeHandle.c][219]
Entry:
Handle Type = 1
Input Handle = 0x92b0d08So there is an error (IM002) in there, saying it can't find the Data Source Name..
Some addtional tests I ran:
dltest /usr/local/lib/libodbc.so returns SUCCESS: Loaded /usr/local/lib/libodbc.so
ldd /usr/local/lib/libodbc.so returns
linux-gate.so.1 => (0x00a44000)
libdl.so.2 => /lib/libdl.so.2 (0x00a22000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00110000)
libc.so.6 => /lib/libc.so.6 (0x005b1000)
/lib/ld-linux.so.2 (0x00736000)
So it can find and load the necessary libraries (afaik)..
So any ideas left?? -
Periodic Importing of data from SQL Server into Oracle Database
I would like to know how I can use the SQL Developer tool to import data from a SQL Server database across the internet into an Oracle Database on a periodic basis? I understand there is a Migration Workbench, but it seems to be only a one off activity.
What I would really like is to be able to import data for example, very 30 minutes from multiple tables/views in a SQL Server Database into an Oracle Database (overwriting or modifying existing same data) without the need for Heterogeneous Connectivity, as my Oracle Database is not my LAN.
Thank you for your kind ideas and suggestions.To be honest the best way to do it is DG4ODBC or DG4MSQL. All other solutions need manual interaction.
The gateways DG4ODBC and DG4MSQL are independant from the Oracle database and also from the SQL Server location. In a worst case scenario you have an Oracle database on machine A, the gateway on machine B and the SQL Server on machine C.
Gateways were built to exactly do what you want. As you have access to the Oracle database the only part you need to define within the Oracle database is a db link. If you specify the full tns connect identifier there is even no need to edit the tnsnames.ora file.
Even if you excluded the gateway in your last sentence the best solution would be the gateway.
Another option you can use is the SQL Server linked server mechanism. It allows you to link another server using OLEDB driver. In your case you can then link the Oracle db into your SQL Server and then insert/update/delete and select Oracle tables from the SQL Server. Using now a trigger will replicate the data immediately to the Oracle db. -
Oracle Linked Server problem in SQL Server
I'm using the MS OLE DB Provider for Oracle in my SQL Server linking an Oracle 9i server to the SQL Server 2000 server. I get the following error when I try to execute a query thru the SQL Server Query Analyzer:
[OLE/DB Provider 'MSDAORA' IOpenRowset::OpenRowset returned 0x80004005: ]
I can however define an ODBC connection and use DTS to get to the Oracle database just fine from the SQL Server machine. I need the linked server query to work though since I'll need it for a new application.
Any help is very much appreciated.
Thanks.
AnjaI guess I'll answer my own question. I found that the setting SQL Query Analyzer was set to "Implicit Transactions" in the current connection properties. When I turned that off the query ran fine
-
SQL Server linked server to Oracle
We have a SQL Server instance with a linked server to Oracle 9i. When doing a select * (from Oracle) into some_table everything works as expected.
There is a project to move the SQL Instance to a new clustered server. We confirmed that the OS, SQL and Oracle Driver versions are the same. The problem is that when we run the exact same statement the table is being created with unicode columns.
For Example:
Oracle
Col1 Varchar2(20),
Col2 Varchar2(100)
Select into on current SQL Instance creates
Col1 Varchar(20),
Col2 Varchar(100)
Select into on new SQL Instance creates
Col1 NVarchar(20),
Col2 NVarchar(100)
Any help to identify how to resolve this issue?
Thank You,
MichaelHi Michael,
The varchar2 data type in Oracle database and nvarchar data type in SQL Server is mapped to DT_WSTR data type in SSIS, while the varchar data type in SQL Server is mapped to DT_STR in SSIS. In your case, when loading the Oracle data to nvarchar columns SQL
Server table, you can extract Oracle data using a source adapter and directly load the data to the SQL Server table. When loading the Oracle data to varchar columns SQL Server table, you need to convert the DT_WSTR data type columns to DT_STR data type columns
before inserting into SQL Server table. To do the data conversion, you can use a Data Conversion Transform.
If you want to do it by using T-SQL rather than SSIS, please ask a new question in the T-SQL forum where you can get dedicated support.
Regards,
Mike Yin
If you have any feedback on our support, please click
here
Mike Yin
TechNet Community Support -
SQL Server 2K "Linked Server" to Oracle 9i Release 2 via "Oracle Provider
Hi,
I'm trying to set up a SQL Server 2000 "Linked Server" to Oracle 9i Release 2 via "Oracle Provider for OLE DB". I have downloaded and installed "Oracle Provider for OLE DB Release 9.2.0.2.0"
My SQL*Net alias/datasource in tnsnames.ora works (It passes the test in "Net 9i Configuration Assistant", I can connect from SQL*Plus, and I can get a Linked server going with the "Microsoft OLE DB Provider for Oracle").
When I set up my Linked Server with Oracle Provider for OLE DB, I need to supply the following three fields (with description from the read-only field at the bottom of the "Linked Server Properties)
Product name: (The product name is the OLE DB data source to add as a linked server.)
Data source: (The data source is usually the name of the server or filename.)
Provider string: (This is the entire provider string.)
Here is my tnsnames.ora entry that works as described above (names may have been changed to protect the innocent)...
PROD9I.XYZ.LOCAL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = nn.nn.nn.nn)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = PROD.ora2.xyz.mno.com)
With every combination of values I have tried for these fields, when I try to use the Linked Server I get this error message...
Could not create an instance of OLE DB provider 'OraOLEDB.Oracle'.
OLE DB error trace [Non-interface error: CoCreate of DSO for OraOLEDB.Oracle returned 0x80040154].
Any help would be greatly appreciated
Thank you,
Daniel JamesonThanks Norman.
Well, I've made it a step closer. I uninstalled everything Oracle from my machine and reinstalled the 9i stuff, including the Oracle OLE DB Provider. Now, after I set up the linked server, and I try to view the Tables or Views under the Linked Servers, I get this error message...
Error 7399: OLE DB provider 'OraOLEDB.Oracle' reported an error.
OLE DB error trace [OLE/DB Provider 'OraOLEDB.Oracle' IDBINitialize::Initialize returned 0x80004005: ].
Does anyone have any idea what this is about? My other Linked Server using the same Oracle SQL*Net alias, but using the Microsoft OLE DB Provider, works fine.
Maybe you are looking for
-
I can't download Firefox from Chrome or IE
I have been trying to download Firefox for a few days now, going back and forth from Chrome and IE. I don't want to use Chrome anymore. When I try to download it from IE it will get to a certain point and tell me that the download has been interrupte
-
Time Issue not just on Alarms – camera Apps too.
I noticed that the summertime switch, which breaks some alarms not only affects the alarms. Recently on a trip to Europe, I also noticed that photos taken with Hipstamatic also don't accept the 1 hour difference. So if you take pics with the normal c
-
Firefox 3.6 easily saved crashed sessons and would bring them back for me every time. Just installed V7.0,1 (for the third or fourth time). V7.0.1 WILL NOT open my crashed sessions. In fact it is stalled and not working at all at this time. Just a lo
-
How to get data from large table (more than 9 million rows) by EJB?
I have a giant table, it has more than 9 million rows. I want to use ejb finders method to get data from this table but always get not enough memory error or time out error, Can anyone give me solutions? Thx
-
I need help installing reinstalling Windows 8 from factory supplied flash drive please
I recently bought an Acer Aspire V5 laptop with Windows 8. I installed Ubuntu to take advantage of a few applications I like, and then realized that two of the main business applications that I need would not run on Ubuntu (none of the Windows emula