Dear all,
This question has been asked many times in this forum, and I have gone to many threads in this forum, but unfortunately i failed.
I want to connect to MySQL database from oracle. I have the following configurations.
- Oracle database enterprise edition 12c (12.1.0.2.0) 64bit on Windows server 2012 64bit
- i have MySQL 5.6.11 on windows 7 64bit
- i have downloaded ODBC driver from oracle delivery site (MySQL Connector/ODBC 5.3.4 MSI for Windows x86 (64bit))
- i install the ODBC on my oracle server, a full installation which install the Unicode and Ansi versions both.
- i create ODBC connection for Unicode by going to Control Panel-->Administrator Tools-->ODBC Data Sources (64-bit)-->System DSN. i test it and the test was successful.
- i configure my Listner.ora, Tnsname.ora and initmysql.ora files as below;
Listner.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Administrator\product\12.1.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Administrator\product\12.1.0\dbhome_1\bin\oraclr12.dll")
)
(SID_DESC=
(SID_NAME = mysql)
(ORACLE_HOME = C:\app\Administrator\product\12.1.0\dbhome_1)
(PROGRAM = dg4odbc)
(ENVS=LD_LIBRARY_PATH = C:\app\Administrator\product\12.1.0\dbhome_1\LIB)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ORADEV.hct.org)(PORT = 1521))
)
Tnsnames.ora
PDBORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ORADEV.hct.org)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = pdborcl.hct.org)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ORADEV.hct.org)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.hct.org)
)
)
mysql =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = N410FS02)(PORT = 1521))
(CONNECT_DATA =
(SID = mysql)
)
(HS = OK)
)
initmysql.ora ( C:\app\Administrator\product\12.1.0\dbhome_1\hs\admin\)
HS_FDS_CONNECT_INFO = mysql
HS_FDS_TRACE_LEVEL = OFF
then i stop and start the listener, the listener status is below
LSNRCTL for 64-bit Windows: Version 12.1.0.2.0 - Production on 23-APR-2015 09:16
:52
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ORADEV.hct.org)(PORT=152
1)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 64-bit Windows: Version 12.1.0.2.0 - Produ
ction
Start Date 23-APR-2015 09:13:56
Uptime 0 days 0 hr. 2 min. 59 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File c:\app\Administrator\product\12.1.0\dbhome_1\network\a
dmin\listener.ora
Listener Log File c:\app\Administrator\diag\tnslsnr\ORADEV\listener\aler
t\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ORADEV.hct.org)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "mysql" has 1 instance(s).
Instance "mysql", status UNKNOWN, has 1 handler(s) for this service...
Service "orcl.hct.org" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB.hct.org" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "pdborcl.hct.org" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully
tnsping MySQL
TNS Ping Utility for 64-bit Windows: Version 12.1.0.2.0 - Production on 23-APR-2
015 09:17:54
Copyright (c) 1997, 2014, Oracle. All rights reserved.
Used parameter files:
c:\app\Administrator\product\12.1.0\dbhome_1\network\admin\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = N410FS02
)(PORT = 1521)) (CONNECT_DATA = (SID = mysql)) (HS = OK))
OK (40 msec)
then i open sqlplus and connect to my pluggable database as sys user and create a public database link for the test schema which i already created in MySQL database.
create public database link mysql connect to test identified by test using 'mysql';
then i try the table1 which is in test schema in MySQL from sqlplus as below
SQL> select * from table1@mysql;
select * from table1@mysql
*
ERROR at line 1:
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 MYSQL
i have tried both the Ansi and Unicode versions of ODBC but the same issue.
where is the problem in my configuration?
Thank you.