SQL Server ODBC-drivrutinen gör att du kan ansluta Oracle på Linux- och UNIX-plattformar till SQL Server eller SQL Azure. Om du bestämmer dig för att kryptera nätverksanslutningen från dina klientapplikationer till SQL Server, eller om du använder SQL Azure, måste du använda TLS-versionen av drivrutinen, som ingår i SQL Server ODBC-drivrutinsdistributionen.
Om du inte använder TLS-versionen av SQL Server ODBC-drivrutinen för att ansluta till en SQL Server-instans som har konfigurerats för att begära en krypterad anslutning, får du det här felet:
Client unable to establish connection: SSL requested but not supported
Om du redan använder Easysoft SQL Server ODBC-drivrutinen med Oracle:
- I SQL Server-datakällan som pekas på av
HS_FDS_CONNECT_INFO
i dittinitSID.ora
, gör följande ändringar:- Ändra
Driver
från:Driver = Easysoft ODBC-SQL Server
till:
Driver = Easysoft ODBC-SQL Server SSL
- Lägg till dessa rader:
Encrypt = Yes TrustServerCertificate = Yes
- Ändra
- Om du pekar på drivrutinsbiblioteket istället för Driver Manager-biblioteket i
initSID.ora
, ändraHS_FDS_SHAREABLE_NAME
värde till:install_dir/easysoft/sqlserver/lib/libessqlsrv_ssl.so
- Starta om Oracle-lyssnaren.
Om du är en ny användare:
- Installera och licensiera SQL Server ODBC-drivrutinen på maskinen där Oracle är installerat.
För installationsinstruktioner, se dokumentationen för ODBC-drivrutinen.
Obs Du behöver unixODBC Driver Manager installerad på din maskin. Easysoft-distributionen inkluderar en version av unixODBC Driver Manager som Easysoft SQL Server ODBC-drivrutinen har testats med. Easysofts drivrutinsinstallationsprogram ger dig möjlighet att installera unixODBC.
- Skapa en ODBC-datakälla i /etc/odbc.ini som ansluter till SQL Server-databasen du vill komma åt från Oracle®. Till exempel:
[SQLSERVER_SAMPLE] Driver = Easysoft ODBC-SQL Server SSL Server = my_machine\SQLEXPRESS User = my_domain\my_user Password = my_password # If the database you want to connect to is the default # for the SQL Server login, omit this attribute Database = Northwind Encrypt = Yes TrustServerCertificate = Yes
- Använd isql för att testa den nya datakällan. Till exempel:
cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v SQLSERVER_SAMPLE
Vid prompten skriver du "hjälp" för att visa en lista med tabeller. För att avsluta, tryck på retur i en tom uppmaningsrad.
Om du inte kan ansluta, se den här artikeln för hjälp.
- Skapa en DG4ODBC init-fil. För att göra detta, ändra till
hs/admin
underkatalog. Till exempel:cd $ORACLE_HOME/product/11.2.0/xe/hs/admin
Skapa en kopia av filen
initdg4odbc.ora
. Namnge den nya fileninitmssql.ora
. - Se till att dessa parametrar och värden finns i din init-fil:
HS_FDS_CONNECT_INFO = var>my_mssql_odbc_dsn
Ersätt my_mssql_odbc_dsn med namnet på en SQL Server ODBC-drivrutinsdatakälla som ansluter till mål-SQL Server-instansen. Till exempel
HS_FDS_CONNECT_INFO = "SQLSERVER_SAMPLE"
- Kommentera raden som möjliggör DG4ODBC-spårning. Till exempel:
#HS_FDS_TRACE_LEVEL = <trace_level>
- Lägg till en post i
listener.ora
som skapar en SID_NAME för DG4ODBC. Till exempel:SID_LIST_LISTENER = (SID_LIST = (SID_DESC= (SID_NAME=mssql) (ORACLE_HOME=$ORACLE_HOME) (PROGRAM=dg4odbc) ) )
- Lägg till en DG4ODBC-post i
tnsnames.ora
som anger SID_NAME som skapades i föregående steg. Till exempel:MSSQL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host)(PORT = 1521)) (CONNECT_DATA = (SID = mssql) ) (HS = OK) )
Ersätt oracle_host med värdnamnet för din Oracle®-maskin.
- Starta (eller starta om) Oracle® Listener. Till exempel:
lsnrctl stop lsnrctl start
- Anslut till din Oracle®-databas i SQL*Plus.
- Skapa en databaslänk för SQL Server-målinstansen i SQL*Plus. Till exempel:
CREATE PUBLIC DATABASE LINK mssqllink CONNECT TO "my_sqlserver_user" IDENTIFIED by "my_password" USING 'mssql'; SELECT * from suppliers@mssqllink
Anteckningar
- Om du har problem med att ansluta till SQL Server från Oracle®, aktivera DG4ODBC-spårning och kontrollera spårningsfilerna som skrivits till
hs/log
katalog. För att aktivera DG4ODBC-spårning, lägg till radenHS_FDS_TRACE_LEVEL = DEBUG
tillinitmssql.ora
och starta/starta om Oracle®-lyssnaren. Omlog
katalogen finns inte, skapa den. Till exempel:mkdir log chmod +w log